Create custom Github Actions for common steps (#27518)
This commit is contained in:
		
							
								
								
									
										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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Install native Ruby dependencies
 | 
			
		||||
        run: 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: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Run 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:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Install system dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          sudo apt-get update
 | 
			
		||||
          sudo apt-get install -y libicu-dev libidn11-dev
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        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 Node.js
 | 
			
		||||
        uses: actions/setup-node@v3
 | 
			
		||||
        with:
 | 
			
		||||
          cache: yarn
 | 
			
		||||
          node-version-file: '.nvmrc'
 | 
			
		||||
 | 
			
		||||
      - name: Install all yarn packages
 | 
			
		||||
        run: yarn --frozen-lockfile
 | 
			
		||||
      - name: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: Check for missing strings in English JSON
 | 
			
		||||
        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 .
 | 
			
		||||
 | 
			
		||||
      # This is needed to run the normalize step
 | 
			
		||||
      - name: Install native Ruby dependencies
 | 
			
		||||
        run: 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: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Run i18n normalize task
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Install native Ruby dependencies
 | 
			
		||||
        run: |
 | 
			
		||||
          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: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Run haml-lint
 | 
			
		||||
        run: |
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										10
									
								
								.github/workflows/lint-js.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								.github/workflows/lint-js.yml
									
									
									
									
										vendored
									
									
								
							@@ -39,14 +39,8 @@ jobs:
 | 
			
		||||
      - name: Clone repository
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: ESLint
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: Prettier
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: Prettier
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Install native Ruby dependencies
 | 
			
		||||
        run: 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: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Set-up RuboCop Problem Matcher
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: Prettier
 | 
			
		||||
        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
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
 | 
			
		||||
      - name: Jest testing
 | 
			
		||||
        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:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Create database
 | 
			
		||||
        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:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Create database
 | 
			
		||||
        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:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Set up Node.js
 | 
			
		||||
        uses: actions/setup-node@v3
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
 | 
			
		||||
      - name: Set up Javascript environment
 | 
			
		||||
        uses: ./.github/actions/setup-javascript
 | 
			
		||||
        with:
 | 
			
		||||
          cache: yarn
 | 
			
		||||
          node-version-file: '.nvmrc'
 | 
			
		||||
          onlyProduction: 'true'
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
        # Previously had set this, but it's not supported
 | 
			
		||||
        # export NODE_OPTIONS=--openssl-legacy-provider
 | 
			
		||||
@@ -135,20 +125,11 @@ jobs:
 | 
			
		||||
          path: './public'
 | 
			
		||||
          name: ${{ github.sha }}
 | 
			
		||||
 | 
			
		||||
      - name: Update package index
 | 
			
		||||
        run: sudo apt-get update
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
        with:
 | 
			
		||||
          ruby-version: ${{ matrix.ruby-version}}
 | 
			
		||||
          bundler-cache: true
 | 
			
		||||
          additional-system-dependencies: ffmpeg imagemagick libpam-dev
 | 
			
		||||
 | 
			
		||||
      - name: Load database schema
 | 
			
		||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
			
		||||
@@ -210,28 +191,14 @@ jobs:
 | 
			
		||||
          path: './public'
 | 
			
		||||
          name: ${{ github.sha }}
 | 
			
		||||
 | 
			
		||||
      - name: Update package index
 | 
			
		||||
        run: sudo apt-get update
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
        with:
 | 
			
		||||
          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
 | 
			
		||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
			
		||||
@@ -328,28 +295,14 @@ jobs:
 | 
			
		||||
          path: './public'
 | 
			
		||||
          name: ${{ github.sha }}
 | 
			
		||||
 | 
			
		||||
      - name: Update package index
 | 
			
		||||
        run: sudo apt-get update
 | 
			
		||||
 | 
			
		||||
      - 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
 | 
			
		||||
      - name: Set up Ruby environment
 | 
			
		||||
        uses: ./.github/actions/setup-ruby
 | 
			
		||||
        with:
 | 
			
		||||
          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
 | 
			
		||||
        run: './bin/rails db:create db:schema:load db:seed'
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user