99 lines
3.6 KiB
YAML
99 lines
3.6 KiB
YAML
pipeline:
|
|
|
|
amd64-glibc:
|
|
when:
|
|
event:
|
|
- push
|
|
secrets:
|
|
- SCW_ACCESS_KEY
|
|
- SCW_SECRET_KEY
|
|
- SCW_DEFAULT_ORGANIZATION_ID
|
|
group: release
|
|
image: elixir:1.13
|
|
environment:
|
|
MIX_ENV: prod
|
|
commands:
|
|
- apt-get update && apt-get install -y cmake libmagic-dev rclone
|
|
- wget https://github.com/scaleway/scaleway-cli/releases/download/v2.5.1/scaleway-cli_2.5.1_linux_amd64
|
|
- mv scaleway-cli_2.5.1_linux_amd64 scaleway-cli
|
|
- chmod +x scaleway-cli
|
|
- ./scaleway-cli object config install type=rclone
|
|
- echo "import Mix.Config" > config/prod.secret.exs
|
|
- mix local.hex --force
|
|
- mix local.rebar --force
|
|
- mix deps.get --only prod
|
|
- mkdir release
|
|
- export PLEROMA_BUILD_BRANCH=$CI_COMMIT_BRANCH
|
|
- mix release --path release
|
|
- zip akkoma-$CI_COMMIT_BRANCH-${platform}.zip -r release
|
|
- rclone copyto akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/$CI_COMMIT_BRANCH/akkoma-${platform}.zip
|
|
|
|
amd64-musl:
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
group: release
|
|
image: elixir:1.13-alpine
|
|
environment:
|
|
MIX_ENV: prod
|
|
commands:
|
|
- apk add git gcc g++ musl-dev make cmake file-dev rclone wget
|
|
- wget https://github.com/scaleway/scaleway-cli/releases/download/v2.5.1/scaleway-cli_2.5.1_linux_amd64
|
|
- mv scaleway-cli_2.5.1_linux_amd64 scaleway-cli
|
|
- chmod +x scaleway-cli
|
|
- ./scaleway-cli object config install type=rclone
|
|
- echo "import Mix.Config" > config/prod.secret.exs
|
|
- mix deps.get --only prod
|
|
- mkdir release
|
|
- export PLEROMA_BUILD_BRANCH=${CI_COMMIT_BRANCH}
|
|
- mix release --path release
|
|
- zip akkoma-$CI_COMMIT_BRANCH-${platform}.zip -r release
|
|
- rclone copyto akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/$CI_COMMIT_BRANCH/akkoma-${platform}.zip
|
|
|
|
arm64-glibc:
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
group: release
|
|
image: arm64v8/elixir:1.13
|
|
environment:
|
|
MIX_ENV: prod
|
|
commands:
|
|
- apt-get update && apt-get install -y cmake libmagic-dev rclone
|
|
- wget https://github.com/scaleway/scaleway-cli/releases/download/v2.5.1/scaleway-cli_2.5.1_linux_amd64
|
|
- mv scaleway-cli_2.5.1_linux_amd64 scaleway-cli
|
|
- chmod +x scaleway-cli
|
|
- ./scaleway-cli object config install type=rclone
|
|
- echo "import Mix.Config" > config/prod.secret.exs
|
|
- mix deps.get --only prod
|
|
- mkdir release
|
|
- export PLEROMA_BUILD_BRANCH=$CI_COMMIT_BRANCH
|
|
- mix release --path release
|
|
- zip akkoma-$CI_COMMIT_BRANCH-${platform}.zip -r release
|
|
- rclone copyto akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/$CI_COMMIT_BRANCH/akkoma-${platform}.zip
|
|
|
|
|
|
arm64-musl:
|
|
when:
|
|
event:
|
|
- tag
|
|
|
|
group: release
|
|
image: arm64v8/elixir:1.13-alpine
|
|
environment:
|
|
MIX_ENV: prod
|
|
commands:
|
|
- apk add git gcc g++ musl-dev make cmake file-dev rclone wget
|
|
- wget https://github.com/scaleway/scaleway-cli/releases/download/v2.5.1/scaleway-cli_2.5.1_linux_amd64
|
|
- mv scaleway-cli_2.5.1_linux_amd64 scaleway-cli
|
|
- chmod +x scaleway-cli
|
|
- ./scaleway-cli object config install type=rclone
|
|
- echo "import Mix.Config" > config/prod.secret.exs
|
|
- mix deps.get --only prod
|
|
- mkdir release
|
|
- export PLEROMA_BUILD_BRANCH=${CI_COMMIT_BRANCH}
|
|
- mix release --path release
|
|
- zip akkoma-$CI_COMMIT_BRANCH-${platform}.zip -r release
|
|
- rclone copyto akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/$CI_COMMIT_BRANCH/akkoma-${platform}.zip
|