From 393b14917c541a2375922712f5bcbc15012e5cc2 Mon Sep 17 00:00:00 2001 From: Bert Frees Date: Wed, 9 Aug 2023 13:55:14 +0200 Subject: [PATCH] Port Travis script to Github workflow --- .github/workflows/publish.yml | 37 +++++++++++++++++++++++++++++++++ .travis.yml | 9 -------- .travis/publish.sh | 21 ------------------- .travis/secrets/deploy_key.enc | Bin 3248 -> 0 bytes Gemfile | 2 +- make/publish.sh | 10 ++++++++- 6 files changed, 47 insertions(+), 32 deletions(-) create mode 100644 .github/workflows/publish.yml delete mode 100644 .travis.yml delete mode 100644 .travis/publish.sh delete mode 100644 .travis/secrets/deploy_key.enc diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000000..e9bfabbec6 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,37 @@ +name: Build and publish + +on: + workflow_dispatch: + push: + branches: [ website ] + +jobs: + publish: + name: Publish website on daisy.github.io/pipeline + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Cache gems + uses: actions/cache@v3 + with: + path: gems + key: ${{ runner.os }}-gems-${{ hashFiles('Gemfile.lock') }} + restore-keys: | + ${{ runner.os }}-gems- + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '2.7.2' + - name: Install dependencies + run: bundle install --path gems + - name: Build + run: make + - name: Publish + if: ${{ github.event_name == 'push' && github.repository =='daisy/pipeline' && github.ref == 'refs/heads/website'}} + env: + GH_REMOTE: "https://${{ secrets.PUBLISH_WEBSITE_GITHUB_TOKEN }}@github.com/daisy/pipeline.git" + GH_USER_NAME: "Github CI" + GH_USER_EMAIL: "daisy@users.noreply.github.com" + run: | + make publish + # make publish-wiki diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index d763470a2e..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,9 +0,0 @@ -install: - - bundle install --path gems -script: - - make -after_success: - - source .travis/publish.sh -cache: - directories: - - gems diff --git a/.travis/publish.sh b/.travis/publish.sh deleted file mode 100644 index cee06d03a8..0000000000 --- a/.travis/publish.sh +++ /dev/null @@ -1,21 +0,0 @@ -# ssh-keygen -t rsa -b 4096 -C 'noreply@travis-ci.org' -f .travis/secrets/deploy_key -# travis encrypt-file --repo daisy/pipeline .travis/secrets/deploy_key -# mv deploy_key.enc .travis/secrets -# rm .travis/secrets/deploy_key -# rm .travis/secrets/deploy_key.pub -# git add .travis/secrets/deploy_key.enc - -if [ "$TRAVIS_PULL_REQUEST" != "false" -o "$TRAVIS_BRANCH" != "website" ]; then - echo "Skipping deployment" - exit 0 -else - openssl aes-256-cbc -K $encrypted_0ca289d261f6_key -iv $encrypted_0ca289d261f6_iv \ - -in .travis/secrets/deploy_key.enc -out .travis/secrets/deploy_key -d && \ - chmod 600 .travis/secrets/deploy_key && \ - eval `ssh-agent -s` && \ - ssh-add .travis/secrets/deploy_key && \ - git config --global user.name "travis-ci" && \ - git config --global user.email "noreply@travis-ci.org" && \ - make publish - make publish-wiki -fi diff --git a/.travis/secrets/deploy_key.enc b/.travis/secrets/deploy_key.enc deleted file mode 100644 index 0db3dd5b69d571ccc5ac0ac599abf708f207edcf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3248 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 diff --git a/Gemfile b/Gemfile index 76868a4960..a7785d4403 100644 --- a/Gemfile +++ b/Gemfile @@ -1,5 +1,5 @@ source 'https://rubygems.org' do - ruby '>= 2.3.3' + ruby '>= 2.7.2' gem 'jekyll', '4.2.0' gem 'rdf', '3.1.15' gem 'rdf-xsd', '3.1.1' diff --git a/make/publish.sh b/make/publish.sh index 669f41c676..8b742e6269 100755 --- a/make/publish.sh +++ b/make/publish.sh @@ -5,7 +5,9 @@ test -z "$(git status . --porcelain)" GIT_HASH=$( git rev-parse HEAD ) WORKING_DIR=$(pwd) SITE_DIR=$1 -GH_REMOTE="git@github.com:daisy/pipeline.git" +if [ "x$GH_REMOTE" = "x" ]; then + GH_REMOTE="git@github.com:daisy/pipeline.git" +fi GH_BRANCH=gh-pages TMP_DIR=$( mktemp -t "$(basename "$0").XXXXXX" ) rm $TMP_DIR @@ -14,6 +16,12 @@ cd $TMP_DIR git rm -r * cp -r $WORKING_DIR/$SITE_DIR/* . git add . +if [ "x$GH_USER_NAME" != "x" ]; then + git config user.name "$GH_USER_NAME" +fi +if [ "x$GH_USER_EMAIL" != "x" ]; then + git config user.email "$GH_USER_EMAIL" +fi git commit -m "publish site [ commit ${GIT_HASH} ]" git push $GH_REMOTE $GH_BRANCH:$GH_BRANCH cd $WORKING_DIR