Skip to content

[PR] Adding API that consumes image files #9

[PR] Adding API that consumes image files

[PR] Adding API that consumes image files #9

Workflow file for this run

name: Elixir CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
name: Build and test
runs-on: ubuntu-latest
services:
postgres:
image: postgres:12
ports: ['5432:5432']
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
# https://github.com/dwyl/imgup/issues/67
# - name: Set AWS Env Vars
# run: |
# echo "::set-env name=AWS_ACCESS_KEY_ID::${{ secrets.CI_AWS_ACCESS_KEY_ID }}"
# echo "::set-env name=AWS_SECRET_ACCESS_KEY::${{ secrets.CI_AWS_SECRET_ACCESS_KEY }}"
# https://github.com/aws-actions/configure-aws-credentials
# - name: Configure AWS Credentials
# uses: aws-actions/configure-aws-credentials@v2
# with:
# role-to-assume: arn:aws:iam::110797354241:role/github-actions-role
# aws-region: us-east-3
# aws-access-key-id: ${{ env.CI_AWS_ACCESS_KEY_ID }}
# aws-secret-access-key: ${{ env.CI_AWS_SECRET_ACCESS_KEY }}
- uses: actions/checkout@v2
- name: Set up Elixir
uses: erlef/setup-beam@v1
with:
elixir-version: '1.14.2' # Define the elixir version [required]
otp-version: '25.1.2' # Define the OTP version [required]
- name: Restore dependencies cache
uses: actions/cache@v2
with:
path: deps
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
restore-keys: ${{ runner.os }}-mix-
- name: Install dependencies
run: mix deps.get
- name: Run Tests
run: mix coveralls.json
env:
AWS_ACCESS_KEY_ID: ${{ secrets.CI_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.CI_AWS_SECRET_ACCESS_KEY }}
AWS_REGION: eu-west-3
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
MIX_ENV: test
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
# Continuous Deployment to Fly.io
# https://fly.io/docs/app-guides/continuous-deployment-with-github-actions/
deploy:
name: Deploy app
runs-on: ubuntu-latest
needs: build
# https://stackoverflow.com/questions/58139406/only-run-job-on-specific-branch-with-github-actions
if: github.ref == 'refs/heads/main'
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
# AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
# AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
steps:
- uses: actions/checkout@v2
- uses: superfly/flyctl-actions@1.1
with:
args: "deploy"