diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2021-09-05 13:10:04 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2021-09-06 15:17:04 +0900 |
commit | a5e323f5edb85fa1bd94bb1e67b8ef8f6827056d (patch) | |
tree | a938475ccd33645c673f2637097fabb96647d6ec | |
parent | f336a3eb6c76890f3d8f878725b3d328c8fdcf33 (diff) | |
download | ruby-a5e323f5edb85fa1bd94bb1e67b8ef8f6827056d.tar.gz |
Schedule to update bundled_gems
-rw-r--r-- | .github/workflows/bundled_gems.yml | 66 |
1 files changed, 66 insertions, 0 deletions
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' }} |