From a5e323f5edb85fa1bd94bb1e67b8ef8f6827056d Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 5 Sep 2021 13:10:04 +0900 Subject: Schedule to update bundled_gems --- .github/workflows/bundled_gems.yml | 66 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 .github/workflows/bundled_gems.yml (limited to '.github/workflows/bundled_gems.yml') diff --git a/.github/workflows/bundled_gems.yml b/.github/workflows/bundled_gems.yml new file mode 100644 index 0000000000..d46c0704cd --- /dev/null +++ b/.github/workflows/bundled_gems.yml @@ -0,0 +1,66 @@ +name: bundled_gems + +on: + schedule: + - cron: '45 6 * * *' + +jobs: + update: + if: ${{ github.repository == 'ruby/ruby' }} + name: update ${{ github.workflow }} + runs-on: ubuntu-latest + steps: + - name: git config + run: | + git config --global advice.detachedHead 0 + git config --global init.defaultBranch garbage + + - name: Set ENV + run: | + echo "JOBS=-j$((1 + $(nproc --all)))" >> $GITHUB_ENV + + - uses: actions/checkout@v2 + + - name: Update ${{ github.workflow }} + run: | + ruby -i~ tool/update-bundled_gems.rb gems/${{ github.workflow }} + + - name: Check diffs + id: diff + run: | + git diff --no-ext-diff --ignore-submodules --exit-code + continue-on-error: true + + - name: Install libraries + run: | + set -x + sudo apt-get update -q || : + sudo apt-get install --no-install-recommends -q -y build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev bison autoconf ruby + if: ${{ steps.diff.outcome == 'failure' }} + + - name: Build + run: | + ./autogen.sh + ./configure -C --disable-install-doc + make $JOBS + if: ${{ steps.diff.outcome == 'failure' }} + + - name: Test bundled gems + run: | + make $JOBS -s test-bundled-gems + timeout-minutes: 30 + env: + RUBY_TESTOPTS: "-q --tty=no" + TEST_BUNDLED_GEMS_ALLOW_FAILURES: "" + if: ${{ steps.diff.outcome == 'failure' }} + + - name: Commit + run: | + git commit --message="Update ${{ github.workflow }} at $(date +%F)" gems/${{ github.workflow }} + git pull --ff-only origin ${GITHUB_REF#refs/heads/} + git push origin ${GITHUB_REF#refs/heads/} + env: + EMAIL: svn-admin@ruby-lang.org + GIT_AUTHOR_NAME: git + GIT_COMMITTER_NAME: git + if: ${{ steps.diff.outcome == 'failure' }} -- cgit v1.2.3