Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate setup script for each major version #9

Merged
merged 4 commits into from
Jul 13, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 14 additions & 28 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,32 +51,25 @@ runs:
env:
REDMINE_DIR: ${{ inputs.path }}

- name: Install dependencies
- name: Set up base environment
run: |
sudo apt-get update; \
sudo apt-get install -y --no-install-recommends \
build-essential \
bzr git mercurial subversion cvs \
ghostscript \
gsfonts \
imagemagick libmagick++-dev \
libnss3-dev;
shell: bash
major_version_with_branch=$REDMINE_VERSION_MAJOR.$REDMINE_VERSION_MINOR.$REDMINE_VERSION_BRANCH

- name: Allow ImageMagick to read PDF files
run: |
sudo sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml
shell: bash
case $major_version_with_branch in
5.1.devel)
setup_version="next";;
5.1*|5.0*|4.2*)
setup_version="$REDMINE_VERSION_MAJOR.$REDMINE_VERSION_MINOR";;
*)
setup_version="next";;
Comment on lines +73 to +74
Copy link
Owner Author

@hidakatsuya hidakatsuya Jul 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For example, when the version is 6.0.0, setup-base-next.sh will be executed.

esac

- name: Set up Google Chrome for system tests
run: |
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y --no-install-recommends google-chrome-stable
echo "Running scripts/setup-base-$setup_version.sh for Redmine $REDMINE_VERSION ..."
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will output like below:

Running scripts/setup-base-4.2.sh for Redmine 4.2.11.stable ...

https://github.com/hidakatsuya/action-setup-redmine/actions/runs/9920802272/job/27408068744


echo GOOGLE_CHROME_OPTS_ARGS="headless,disable-gpu,no-sandbox,disable-dev-shm-usage" >> $GITHUB_ENV
./scripts/setup-base-$setup_version.sh
shell: bash
env:
REDMINE_DIR: ${{ inputs.path }}

- name: Set up PostgreSQL database
if: ${{ startsWith(inputs.database, 'postgres:') }}
Expand All @@ -101,13 +94,6 @@ runs:
env:
REDMINE_DIR: ${{ inputs.path }}

# https://www.redmine.org/issues/40802
- name: Fix LoadError in Redmine 4.2
if: ${{ env.REDMINE_VERSION_MAJOR < 5 }}
run: echo "gem 'builder', '~> 3.2.4'" >> Gemfile.local
shell: bash
working-directory: ${{ inputs.path }}

- name: Set up Ruby and install dependencies
uses: ruby/setup-ruby@v1
with:
Expand Down
27 changes: 27 additions & 0 deletions scripts/setup-base-4.2.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/bash

set -eu

# Install dependencies
sudo apt-get update; \
sudo apt-get install -y --no-install-recommends \
build-essential \
bzr git mercurial subversion cvs \
ghostscript \
gsfonts \
imagemagick libmagick++-dev \
libnss3-dev;

# Allow ImageMagick to read PDF files
sudo sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml

# Set up Google Chrome for system tests
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y --no-install-recommends google-chrome-stable
echo GOOGLE_CHROME_OPTS_ARGS="headless,disable-gpu,no-sandbox,disable-dev-shm-usage" >> $GITHUB_ENV

# Fix LoadError cannot load such file -- builder
# https://www.redmine.org/issues/40802
echo "gem 'builder', '~> 3.2.4'" >> $REDMINE_DIR/Gemfile.local
23 changes: 23 additions & 0 deletions scripts/setup-base-5.0.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/bash

set -eu

# Install dependencies
sudo apt-get update; \
sudo apt-get install -y --no-install-recommends \
build-essential \
bzr git mercurial subversion cvs \
ghostscript \
gsfonts \
imagemagick libmagick++-dev \
libnss3-dev;

# Allow ImageMagick to read PDF files
sudo sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml

# Set up Google Chrome for system tests
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y --no-install-recommends google-chrome-stable
echo GOOGLE_CHROME_OPTS_ARGS="headless,disable-gpu,no-sandbox,disable-dev-shm-usage" >> $GITHUB_ENV
23 changes: 23 additions & 0 deletions scripts/setup-base-5.1.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/bash

set -eu

# Install dependencies
sudo apt-get update; \
sudo apt-get install -y --no-install-recommends \
build-essential \
bzr git mercurial subversion cvs \
ghostscript \
gsfonts \
imagemagick libmagick++-dev \
libnss3-dev;

# Allow ImageMagick to read PDF files
sudo sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml

# Set up Google Chrome for system tests
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y --no-install-recommends google-chrome-stable
echo GOOGLE_CHROME_OPTS_ARGS="headless,disable-gpu,no-sandbox,disable-dev-shm-usage" >> $GITHUB_ENV
23 changes: 23 additions & 0 deletions scripts/setup-base-next.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#!/bin/bash

set -eu

# Install dependencies
sudo apt-get update; \
sudo apt-get install -y --no-install-recommends \
build-essential \
bzr git mercurial subversion cvs \
ghostscript \
gsfonts \
imagemagick libmagick++-dev \
libnss3-dev;

# Allow ImageMagick to read PDF files
sudo sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml

# Set up Google Chrome for system tests
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
sudo apt-get update
sudo apt-get install -y --no-install-recommends google-chrome-stable
echo GOOGLE_CHROME_OPTS_ARGS="headless,disable-gpu,no-sandbox,disable-dev-shm-usage" >> $GITHUB_ENV