Timezone update #197
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Timezone update | |
| on: | |
| schedule: | |
| # Run once a week at 00:05 AM UTC on Sunday. | |
| - cron: 5 0 * * 0 | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| timezone_update: | |
| permissions: | |
| contents: write # to push local changes (gr2m/create-or-update-pull-request-action) | |
| pull-requests: write # to create a PR (gr2m/create-or-update-pull-request-action) | |
| if: github.repository == 'nodejs/node' | |
| # cannot use ubuntu-slim here because it does not have icupkg | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout nodejs/node | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| persist-credentials: false | |
| - name: Checkout unicode-org/icu-data | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| path: icu-data | |
| persist-credentials: false | |
| repository: unicode-org/icu-data | |
| - name: Record new version | |
| run: echo "new_version=$(ls icu-data/tzdata/icunew | tail -1)" >> $GITHUB_ENV | |
| - name: Record current version | |
| run: echo "current_version=$(cat ./test/fixtures/tz-version.txt)" >> $GITHUB_ENV | |
| - name: Compare versions | |
| run: | | |
| echo "Comparing current version ${{ env.current_version }} to new version ${{ env.new_version }}" | |
| - run: ./tools/update-timezone.mjs | |
| if: ${{ env.new_version != env.current_version }} | |
| - name: Update the expected timezone version in test | |
| if: ${{ env.new_version != env.current_version }} | |
| run: echo "${{ env.new_version }}" > test/fixtures/tz-version.txt | |
| - name: Open Pull Request | |
| if: ${{ env.new_version != env.current_version }} | |
| uses: gr2m/create-or-update-pull-request-action@77596e3166f328b24613f7082ab30bf2d93079d5 # Create a PR or update the Action's existing PR | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} | |
| with: | |
| author: Node.js GitHub Bot <github-bot@iojs.org> | |
| body: | | |
| This PR was generated by `.github/workflows/timezone-update.yml` and `tools/update-timezone.mjs`. | |
| Updates the ICU files as per the instructions present in https://github.com/nodejs/node/blob/main/doc/contributing/maintaining/maintaining-icu.md#time-zone-data | |
| To test, build node off this branch & log the version of tz using | |
| ```js | |
| console.log(process.versions.tz) | |
| ``` | |
| branch: actions/timezone-update | |
| commit-message: 'deps: update timezone to ${{ env.new_version }}' | |
| labels: dependencies | |
| title: 'deps: update timezone to ${{ env.new_version }}' | |
| reviewers: \@nodejs/i18n-api | |
| update-pull-request-title-and-body: true |