X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;ds=sidebyside;f=.woodpecker%2F.release.yml;h=28043aa655d5792964178589cdebf90fb1aa7a16;hb=41f35721529089045e2421991035ba362fc34166;hp=253dd80713b33cc65af7cfadebde6cd9571d22dd;hpb=b21ac6b2467060a7cecae915a7136c0ceec2d5d6;p=akkoma diff --git a/.woodpecker/.release.yml b/.woodpecker/.release.yml index 253dd8071..28043aa65 100644 --- a/.woodpecker/.release.yml +++ b/.woodpecker/.release.yml @@ -1,96 +1,78 @@ -depends_on: -- test +matrix: + docker_prefix: + - "" + - arm64v8/ + - arm32v7/ + tag: + - amd64 + - arm64 + - arm -pipeline: + include: + - tag: amd64 + docker_prefix: "" - amd64-glibc: - when: - event: - - tag - - 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 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 copy akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/ - - amd64-musl: +pipeline: + glibc: when: event: - - tag - - group: release - image: elixir:1.13-alpine + - push + branch: + - develop + secrets: + - SCW_ACCESS_KEY + - SCW_SECRET_KEY + - SCW_DEFAULT_ORGANIZATION_ID + image: ${docker_prefix}elixir:1.13 environment: MIX_ENV: prod commands: - - apk add git gcc g++ musl-dev make cmake file-dev rclone wget + - apt-get update && apt-get install -y cmake libmagic-dev rclone zip - 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.clean --all - mix deps.get --only prod - mkdir release - - export PLEROMA_BUILD_BRANCH=${CI_COMMIT_BRANCH} + - export PLEROMA_BUILD_BRANCH=develop - mix release --path release - - zip akkoma-$CI_COMMIT_BRANCH-${platform}.zip -r release - - rclone copy akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/ + - zip akkoma-${tag}.zip -r release + - rclone copyto akkoma-${tag}.zip scaleway:akkoma-updates/develop/akkoma-${tag}.zip - arm64-glibc: + musl: when: event: - - tag - + - push + branch: + - develop + secrets: + - SCW_ACCESS_KEY + - SCW_SECRET_KEY + - SCW_DEFAULT_ORGANIZATION_ID group: release - image: arm64v8/elixir:1.13 + image: ${docker_prefix}elixir:1.13-alpine environment: MIX_ENV: prod commands: - - apt-get update && apt-get install -y cmake libmagic-dev rclone + - apk add git gcc g++ musl-dev make cmake file-dev rclone wget zip + - rm -rf release || true + - rm -rf _build || true + - rm -rf /root/.mix + - rm scaleway-cli || true - 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 copy akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/ - 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 local.hex --force + - mix local.rebar --force + - mix deps.clean --all - 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 copy akkoma-$CI_COMMIT_BRANCH-${platform}.zip scaleway:akkoma-updates/ + - export PLEROMA_BUILD_BRANCH=develop + - zip akkoma-${tag}.zip -r release + - rclone copyto akkoma-${tag}.zip scaleway:akkoma-updates/develop/akkoma-${tag}-musl.zip