Create custom Github Actions for common steps (#27518)
This commit is contained in:
		
							parent
							
								
									714e3ae5b5
								
							
						
					
					
						commit
						6cf9f1211b
					
				
							
								
								
									
										19
									
								
								.github/actions/setup-javascript/action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								.github/actions/setup-javascript/action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					name: 'Setup Javascript'
 | 
				
			||||||
 | 
					description: 'Setup a Javascript environment ready to run the Mastodon code'
 | 
				
			||||||
 | 
					inputs:
 | 
				
			||||||
 | 
					  onlyProduction:
 | 
				
			||||||
 | 
					    description: Only install production dependencies
 | 
				
			||||||
 | 
					    default: 'false'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					runs:
 | 
				
			||||||
 | 
					  using: 'composite'
 | 
				
			||||||
 | 
					  steps:
 | 
				
			||||||
 | 
					    - name: Set up Node.js
 | 
				
			||||||
 | 
					      uses: actions/setup-node@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        cache: yarn
 | 
				
			||||||
 | 
					        node-version-file: '.nvmrc'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Install all yarn packages
 | 
				
			||||||
 | 
					      shell: bash
 | 
				
			||||||
 | 
					      run: yarn --frozen-lockfile ${{ inputs.onlyProduction != 'false' && '--production' || '' }}
 | 
				
			||||||
							
								
								
									
										23
									
								
								.github/actions/setup-ruby/action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.github/actions/setup-ruby/action.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					name: 'Setup RUby'
 | 
				
			||||||
 | 
					description: 'Setup a Ruby environment ready to run the Mastodon code'
 | 
				
			||||||
 | 
					inputs:
 | 
				
			||||||
 | 
					  ruby-version:
 | 
				
			||||||
 | 
					    description: The Ruby version to install
 | 
				
			||||||
 | 
					    default: '.ruby-version'
 | 
				
			||||||
 | 
					  additional-system-dependencies:
 | 
				
			||||||
 | 
					    description: 'Additional packages to install'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					runs:
 | 
				
			||||||
 | 
					  using: 'composite'
 | 
				
			||||||
 | 
					  steps:
 | 
				
			||||||
 | 
					    - name: Install system dependencies
 | 
				
			||||||
 | 
					      shell: bash
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        sudo apt-get update
 | 
				
			||||||
 | 
					        sudo apt-get install -y libicu-dev libidn11-dev ${{ inputs.additional-system-dependencies }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Set up Ruby
 | 
				
			||||||
 | 
					      uses: ruby/setup-ruby@v1
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        ruby-version: ${{ inputs.ruby-version }}
 | 
				
			||||||
 | 
					        bundler-cache: true
 | 
				
			||||||
							
								
								
									
										10
									
								
								.github/workflows/bundler-audit.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/bundler-audit.yml
									
									
									
									
										vendored
									
									
								
							@ -27,14 +27,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Ruby
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run bundler-audit
 | 
					      - name: Run bundler-audit
 | 
				
			||||||
        run: bundle exec bundler-audit
 | 
					        run: bundle exec bundler-audit
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										22
									
								
								.github/workflows/check-i18n.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								.github/workflows/check-i18n.yml
									
									
									
									
										vendored
									
									
								
							@ -19,25 +19,11 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v4
 | 
					      - uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install system dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: |
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
          sudo apt-get update
 | 
					 | 
				
			||||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Ruby
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Node.js
 | 
					 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Check for missing strings in English JSON
 | 
					      - name: Check for missing strings in English JSON
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/crowdin-download.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/crowdin-download.yml
									
									
									
									
										vendored
									
									
								
							@ -44,14 +44,8 @@ jobs:
 | 
				
			|||||||
        run: sudo chown -R runner:docker .
 | 
					        run: sudo chown -R runner:docker .
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      # This is needed to run the normalize step
 | 
					      # This is needed to run the normalize step
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Ruby
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run i18n normalize task
 | 
					      - name: Run i18n normalize task
 | 
				
			||||||
        run: bundle exec i18n-tasks normalize
 | 
					        run: bundle exec i18n-tasks normalize
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-css.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-css.yml
									
									
									
									
										vendored
									
									
								
							@ -35,14 +35,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - uses: xt0rted/stylelint-problem-matcher@v1
 | 
					      - uses: xt0rted/stylelint-problem-matcher@v1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										12
									
								
								.github/workflows/lint-haml.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/lint-haml.yml
									
									
									
									
										vendored
									
									
								
							@ -30,16 +30,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: |
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
          sudo apt-get update
 | 
					 | 
				
			||||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Ruby
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Run haml-lint
 | 
					      - name: Run haml-lint
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-js.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-js.yml
									
									
									
									
										vendored
									
									
								
							@ -39,14 +39,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: ESLint
 | 
					      - name: ESLint
 | 
				
			||||||
        run: yarn lint:js --max-warnings 0
 | 
					        run: yarn lint:js --max-warnings 0
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-json.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-json.yml
									
									
									
									
										vendored
									
									
								
							@ -31,14 +31,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Prettier
 | 
					      - name: Prettier
 | 
				
			||||||
        run: yarn lint:json
 | 
					        run: yarn lint:json
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-md.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-md.yml
									
									
									
									
										vendored
									
									
								
							@ -31,14 +31,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Prettier
 | 
					      - name: Prettier
 | 
				
			||||||
        run: yarn lint:md
 | 
					        run: yarn lint:md
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-ruby.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-ruby.yml
									
									
									
									
										vendored
									
									
								
							@ -31,14 +31,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Ruby
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set-up RuboCop Problem Matcher
 | 
					      - name: Set-up RuboCop Problem Matcher
 | 
				
			||||||
        uses: r7kamura/rubocop-problem-matchers-action@v1
 | 
					        uses: r7kamura/rubocop-problem-matchers-action@v1
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/lint-yml.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-yml.yml
									
									
									
									
										vendored
									
									
								
							@ -33,14 +33,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Prettier
 | 
					      - name: Prettier
 | 
				
			||||||
        run: yarn lint:yml
 | 
					        run: yarn lint:yml
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										10
									
								
								.github/workflows/test-js.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/test-js.yml
									
									
									
									
										vendored
									
									
								
							@ -35,14 +35,8 @@ jobs:
 | 
				
			|||||||
      - name: Clone repository
 | 
					      - name: Clone repository
 | 
				
			||||||
        uses: actions/checkout@v4
 | 
					        uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install all yarn packages
 | 
					 | 
				
			||||||
        run: yarn --frozen-lockfile
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Jest testing
 | 
					      - name: Jest testing
 | 
				
			||||||
        run: yarn jest --reporters github-actions summary
 | 
					        run: yarn jest --reporters github-actions summary
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										12
									
								
								.github/workflows/test-migrations-one-step.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/test-migrations-one-step.yml
									
									
									
									
										vendored
									
									
								
							@ -72,16 +72,8 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v4
 | 
					      - uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: |
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
          sudo apt-get update
 | 
					 | 
				
			||||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Create database
 | 
					      - name: Create database
 | 
				
			||||||
        run: './bin/rails db:create'
 | 
					        run: './bin/rails db:create'
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										12
									
								
								.github/workflows/test-migrations-two-step.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								.github/workflows/test-migrations-two-step.yml
									
									
									
									
										vendored
									
									
								
							@ -71,16 +71,8 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v4
 | 
					      - uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: |
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
          sudo apt-get update
 | 
					 | 
				
			||||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Create database
 | 
					      - name: Create database
 | 
				
			||||||
        run: './bin/rails db:create'
 | 
					        run: './bin/rails db:create'
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										85
									
								
								.github/workflows/test-ruby.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										85
									
								
								.github/workflows/test-ruby.yml
									
									
									
									
										vendored
									
									
								
							@ -34,24 +34,14 @@ jobs:
 | 
				
			|||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v4
 | 
					      - uses: actions/checkout@v4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Set up Node.js
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          cache: yarn
 | 
					          onlyProduction: 'true'
 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					 | 
				
			||||||
        run: |
 | 
					 | 
				
			||||||
          sudo apt-get update
 | 
					 | 
				
			||||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          ruby-version: .ruby-version
 | 
					 | 
				
			||||||
          bundler-cache: true
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - run: yarn --frozen-lockfile --production
 | 
					 | 
				
			||||||
      - name: Precompile assets
 | 
					      - name: Precompile assets
 | 
				
			||||||
        # Previously had set this, but it's not supported
 | 
					        # Previously had set this, but it's not supported
 | 
				
			||||||
        # export NODE_OPTIONS=--openssl-legacy-provider
 | 
					        # export NODE_OPTIONS=--openssl-legacy-provider
 | 
				
			||||||
@ -135,20 +125,11 @@ jobs:
 | 
				
			|||||||
          path: './public'
 | 
					          path: './public'
 | 
				
			||||||
          name: ${{ github.sha }}
 | 
					          name: ${{ github.sha }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Update package index
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get update
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install additional system dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y ffmpeg imagemagick libpam-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          ruby-version: ${{ matrix.ruby-version}}
 | 
					          ruby-version: ${{ matrix.ruby-version}}
 | 
				
			||||||
          bundler-cache: true
 | 
					          additional-system-dependencies: ffmpeg imagemagick libpam-dev
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Load database schema
 | 
					      - name: Load database schema
 | 
				
			||||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
					        run: './bin/rails db:create db:schema:load db:seed'
 | 
				
			||||||
@ -210,28 +191,14 @@ jobs:
 | 
				
			|||||||
          path: './public'
 | 
					          path: './public'
 | 
				
			||||||
          name: ${{ github.sha }}
 | 
					          name: ${{ github.sha }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Update package index
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get update
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Node.js
 | 
					 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install additional system dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y ffmpeg imagemagick
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          ruby-version: ${{ matrix.ruby-version}}
 | 
					          ruby-version: ${{ matrix.ruby-version}}
 | 
				
			||||||
          bundler-cache: true
 | 
					          additional-system-dependencies: ffmpeg imagemagick
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - run: yarn --frozen-lockfile
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Load database schema
 | 
					      - name: Load database schema
 | 
				
			||||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
					        run: './bin/rails db:create db:schema:load db:seed'
 | 
				
			||||||
@ -328,28 +295,14 @@ jobs:
 | 
				
			|||||||
          path: './public'
 | 
					          path: './public'
 | 
				
			||||||
          name: ${{ github.sha }}
 | 
					          name: ${{ github.sha }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Update package index
 | 
					      - name: Set up Ruby environment
 | 
				
			||||||
        run: sudo apt-get update
 | 
					        uses: ./.github/actions/setup-ruby
 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up Node.js
 | 
					 | 
				
			||||||
        uses: actions/setup-node@v3
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          cache: yarn
 | 
					 | 
				
			||||||
          node-version-file: '.nvmrc'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install native Ruby dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y libicu-dev libidn11-dev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Install additional system dependencies
 | 
					 | 
				
			||||||
        run: sudo apt-get install -y ffmpeg imagemagick
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: Set up bundler cache
 | 
					 | 
				
			||||||
        uses: ruby/setup-ruby@v1
 | 
					 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
          ruby-version: ${{ matrix.ruby-version}}
 | 
					          ruby-version: ${{ matrix.ruby-version}}
 | 
				
			||||||
          bundler-cache: true
 | 
					          additional-system-dependencies: ffmpeg imagemagick
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - run: yarn --frozen-lockfile
 | 
					      - name: Set up Javascript environment
 | 
				
			||||||
 | 
					        uses: ./.github/actions/setup-javascript
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      - name: Load database schema
 | 
					      - name: Load database schema
 | 
				
			||||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
					        run: './bin/rails db:create db:schema:load db:seed'
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user