kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.9 KiB
59 lines
1.9 KiB
4 years ago
|
name: Core / Translations
|
||
|
on:
|
||
|
schedule:
|
||
|
- cron: '0 3 * * *' # Daily at 03:00
|
||
|
|
||
|
jobs:
|
||
|
setup:
|
||
|
runs-on: ubuntu-latest
|
||
|
outputs:
|
||
|
latest_release_branch: ${{ steps.find_latest_release.outputs.branch }}
|
||
|
steps:
|
||
|
- id: find_latest_release
|
||
|
env:
|
||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
GITHUB_REPOSITORY: ${{ github.repository }}
|
||
|
run: |
|
||
|
BRANCH=$(curl -H "Authorization: token $GITHUB_TOKEN" \
|
||
|
https://api.github.com/repos/$GITHUB_REPOSITORY/branches?protected=true | \
|
||
|
jq -r .[].name | grep "release/" | sort -r | head -1
|
||
|
)
|
||
|
if [ "$BRANCH" = "" ]; then
|
||
|
echo "Invalid release branch found: $BRANCH"
|
||
|
exit 1
|
||
|
fi
|
||
|
echo "::set-output name=branch::${BRANCH}"
|
||
|
|
||
|
crowdin:
|
||
|
runs-on: ubuntu-latest
|
||
|
needs: setup
|
||
|
timeout-minutes: 60
|
||
|
strategy:
|
||
|
matrix:
|
||
|
branch:
|
||
|
- dev
|
||
|
- "${{ needs.setup.outputs.latest_release_branch }}"
|
||
|
steps:
|
||
|
- uses: actions/checkout@v2
|
||
|
with:
|
||
|
ref: ${{ matrix.branch }}
|
||
|
fetch-depth: 1
|
||
|
- uses: ruby/setup-ruby@v1
|
||
|
with:
|
||
|
bundler-cache: true
|
||
|
- name: run
|
||
|
env:
|
||
|
DATABASE_URL: 'nulldb://nohost'
|
||
|
OPENPROJECT_CROWDIN_PROJECT: ${{ secrets.OPENPROJECT_CROWDIN_PROJECT }}
|
||
|
OPENPROJECT_CROWDIN_API_KEY: ${{ secrets.OPENPROJECT_CROWDIN_API_KEY }}
|
||
|
run: |
|
||
|
git config user.name "OpenProject Actions CI"
|
||
|
git config user.email "operations+ci@openproject.com"
|
||
|
bundle exec rake db:create
|
||
|
echo "Updating combined translations"
|
||
|
bundle exec rake translations:update
|
||
|
git add config/locales/**/*.yml
|
||
|
git add modules/**/*.yml
|
||
|
git diff --staged --name-only
|
||
|
git diff --staged --exit-code --quiet || ( git commit -m "update locales from crowdin [ci skip]" && git pull --rebase && git push origin $BRANCH )
|