| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| --- |
| name: Sync authors list |
| |
| on: # yamllint disable-line rule:truthy |
| schedule: |
| # min hr dom mon dow |
| - cron: '11 01 * * *' # daily at 1.11am |
| workflow_dispatch: |
| # only users with write access to apache/airflow can run manually |
| # https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow |
| |
| permissions: |
| contents: write |
| pull-requests: write |
| |
| jobs: |
| sync: |
| name: Sync |
| runs-on: ubuntu-latest |
| |
| steps: |
| - name: Checkout |
| uses: actions/checkout@v3 |
| |
| - name: Python |
| uses: actions/setup-python@v4 |
| with: |
| python-version: '3.10' |
| |
| - name: Requests |
| run: | |
| pip install requests toml |
| |
| - name: Sync the authors list |
| env: |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| run: | |
| python scripts/ci/runners/sync_authors.py |
| git config user.name "GitHub Actions" |
| git config user.email "actions@users.noreply.github.com" |
| if [ -n "$(git status --porcelain)" ]; then |
| branch=update-$(date +%s) |
| git add -A |
| git checkout -b $branch |
| git commit --message "Authors list automatic update" |
| git push origin $branch |
| gh pr create --title "Authors list automatic update" --body '' |
| fi |