Support translation branches in Crowdin (#32174)
This commit is contained in:
		
							
								
								
									
										69
									
								
								.github/workflows/crowdin-download-stable.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								.github/workflows/crowdin-download-stable.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,69 @@
 | 
			
		||||
name: Crowdin / Download translations (stable branches)
 | 
			
		||||
on:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
 | 
			
		||||
permissions:
 | 
			
		||||
  contents: write
 | 
			
		||||
  pull-requests: write
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  download-translations-stable:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    if: github.repository == 'mastodon/mastodon'
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Increase Git http.postBuffer
 | 
			
		||||
        # This is needed due to a bug in Ubuntu's cURL version?
 | 
			
		||||
        # See https://github.com/orgs/community/discussions/55820
 | 
			
		||||
        run: |
 | 
			
		||||
          git config --global http.version HTTP/1.1
 | 
			
		||||
          git config --global http.postBuffer 157286400
 | 
			
		||||
 | 
			
		||||
      # Download the translation files from Crowdin
 | 
			
		||||
      - name: crowdin action
 | 
			
		||||
        uses: crowdin/github-action@v2
 | 
			
		||||
        with:
 | 
			
		||||
          upload_sources: false
 | 
			
		||||
          upload_translations: false
 | 
			
		||||
          download_translations: true
 | 
			
		||||
          crowdin_branch_name: ${{ github.base_ref || github.ref_name }}
 | 
			
		||||
          push_translations: false
 | 
			
		||||
          create_pull_request: false
 | 
			
		||||
        env:
 | 
			
		||||
          CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }}
 | 
			
		||||
          CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
 | 
			
		||||
 | 
			
		||||
      # As the files are extracted from a Docker container, they belong to root:root
 | 
			
		||||
      # We need to fix this before the next steps
 | 
			
		||||
      - name: Fix file permissions
 | 
			
		||||
        run: sudo chown -R runner:docker .
 | 
			
		||||
 | 
			
		||||
      # This is needed to run the normalize step
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Run i18n normalize task
 | 
			
		||||
        run: bundle exec i18n-tasks normalize
 | 
			
		||||
 | 
			
		||||
      # Create or update the pull request
 | 
			
		||||
      - name: Create Pull Request
 | 
			
		||||
        uses: peter-evans/create-pull-request@v7.0.1
 | 
			
		||||
        with:
 | 
			
		||||
          commit-message: 'New Crowdin translations'
 | 
			
		||||
          title: 'New Crowdin Translations for ${{ github.base_ref || github.ref_name }} (automated)'
 | 
			
		||||
          author: 'GitHub Actions <noreply@github.com>'
 | 
			
		||||
          body: |
 | 
			
		||||
            New Crowdin translations, automated with GitHub Actions
 | 
			
		||||
 | 
			
		||||
            See `.github/workflows/crowdin-download.yml`
 | 
			
		||||
 | 
			
		||||
            This PR will be updated every day with new translations.
 | 
			
		||||
 | 
			
		||||
            Due to a limitation in GitHub Actions, checks are not running on this PR without manual action.
 | 
			
		||||
            If you want to run the checks, then close and re-open it.
 | 
			
		||||
          branch: i18n/crowdin/translations-${{ github.base_ref || github.ref_name }}
 | 
			
		||||
          base: ${{ github.base_ref || github.ref_name }}
 | 
			
		||||
          labels: i18n
 | 
			
		||||
							
								
								
									
										2
									
								
								.github/workflows/crowdin-upload.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/crowdin-upload.yml
									
									
									
									
										vendored
									
									
								
							@@ -31,7 +31,7 @@ jobs:
 | 
			
		||||
          upload_sources: true
 | 
			
		||||
          upload_translations: false
 | 
			
		||||
          download_translations: false
 | 
			
		||||
          crowdin_branch_name: main
 | 
			
		||||
          crowdin_branch_name: ${{ github.base_ref || github.ref_name }}
 | 
			
		||||
 | 
			
		||||
        env:
 | 
			
		||||
          CROWDIN_PROJECT_ID: ${{ vars.CROWDIN_PROJECT_ID }}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user