chore: upgrade tzdata to 1.1.2 #443
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: on_push_branch__execute_tests | |
on: [push, pull_request] | |
jobs: | |
build_deps: | |
runs-on: ubuntu-latest | |
# Currently, this need to be synced manually with the Dockerfile. In the future, the workflow should be changed, | |
# so that a development container is built from the Dockerfile, pushed, and then re-used in the following steps. | |
# This would also remove the need to install cmake manually in each step: | |
container: hexpm/elixir:1.17.2-erlang-27.0.1-debian-bookworm-20240812-slim | |
steps: | |
# See https://github.com/actions/checkout | |
- uses: actions/checkout@v4 | |
# we need cmake for fast_sanitize: | |
- run: apt-get -y update && apt-get -y install build-essential cmake | |
# install hex: | |
- run: mix local.hex --force && mix local.rebar --force | |
# See https://github.com/actions/cache | |
- uses: actions/cache@v4 | |
id: cache | |
with: | |
path: | | |
deps | |
_build | |
key: ${{ runner.os }}-mix-v4-${{ hashFiles('**/mix.lock') }} | |
restore-keys: ${{ runner.os }}-mix-v4 | |
- run: mix deps.get && mix deps.compile | |
if: steps.cache.outputs.cache-hit != 'true' | |
check_mix_test: | |
# Containers must run in Linux based operating systems | |
runs-on: ubuntu-latest | |
# Docker Hub image that `container-job` executes in | |
container: hexpm/elixir:1.17.2-erlang-27.0.1-debian-bookworm-20240812-slim | |
needs: build_deps | |
# Service containers to run with `container-job` | |
services: | |
# Label used to access the service container | |
postgres: | |
image: postgres:latest | |
env: | |
# These env variables are required by the postgres service (see above) | |
POSTGRES_DB: qrstorage_test | |
POSTGRES_HOST: postgres | |
POSTGRES_USER: postgres | |
POSTGRES_PASSWORD: postgres | |
# Set health checks to wait until postgres has started | |
options: >- | |
--health-cmd pg_isready | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
env: | |
# These env vars are required by our application | |
DATABASE_HOST: postgres | |
DATABASE_NAME: qrstorage_test | |
DATABASE_USER: postgres | |
DATABASE_USER_PASSWORD: postgres | |
DATABASE_SSL: false | |
# This should only be used for the tests: | |
SECRET_KEY_BASE: "DFvi5ZWW/Xc/yBgPOQ0w1wWZEGjy7NMl1/fRFyWf2EgbWNcXqtAOKUjh4bVps/eQ" | |
VAULT_ENCRYPTION_KEY_BASE64: "h3NKY+sEnQYSSoM7Qm0mNzHgwT99GD+TQVdz+q0sdEA=" | |
MIX_ENV: "test" | |
OBJECT_STORAGE_BUCKET: "qrstorage-test" | |
steps: | |
# Downloads a copy of the code in your repository before running CI tests | |
- uses: actions/checkout@v4 | |
# we need cmake for fast_sanitize: | |
- run: apt-get -y update && apt-get -y install build-essential cmake | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
deps | |
_build | |
key: ${{ runner.os }}-mix-v4-${{ hashFiles('**/mix.lock') }} | |
restore-keys: ${{ runner.os }}-mix-v4 | |
# install hex: | |
- run: mix local.hex --force && mix local.rebar --force | |
- run: mix compile | |
- run: mix ecto.create | |
- run: mix ecto.migrate | |
- run: mix test | |
check_mix_format: | |
runs-on: ubuntu-latest | |
container: hexpm/elixir:1.17.2-erlang-27.0.1-debian-bookworm-20240812-slim | |
needs: build_deps | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
# install hex: | |
- run: mix local.hex --force && mix local.rebar --force | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
deps | |
_build | |
key: ${{ runner.os }}-mix-v4-${{ hashFiles('**/mix.lock') }} | |
restore-keys: ${{ runner.os }}-mix-v4 | |
- run: mix format --check-formatted | |
check_mix_sobelow: | |
runs-on: ubuntu-latest | |
container: hexpm/elixir:1.17.2-erlang-27.0.1-debian-bookworm-20240812-slim | |
needs: build_deps | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
# install hex: | |
- run: mix local.hex --force && mix local.rebar --force | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
deps | |
_build | |
key: ${{ runner.os }}-mix-v4-${{ hashFiles('**/mix.lock') }} | |
restore-keys: ${{ runner.os }}-mix-v4 | |
- run: mix sobelow --config |