ci: Build the ubuntu-aarch64 binary with new ARM runners
The new GitHub arm runners are available, so we can use them to build the ubuntu aarch64 binary instead of our custom machine.
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
# TODO: Remove this once a new actionlint release has been cut
|
||||||
|
# and made its way to us through nixpkgs.
|
||||||
|
self-hosted-runner:
|
||||||
|
labels:
|
||||||
|
- ubuntu-24.04-arm
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -Eeuo pipefail
|
|
||||||
|
|
||||||
# This script builds PostgREST in a remote ARM server
|
|
||||||
|
|
||||||
[ -z "$1" ] && { echo "Missing 1st argument: PostgREST github commit SHA"; exit 1; }
|
|
||||||
[ -z "$2" ] && { echo "Missing 2nd argument: Build environment directory name"; exit 1; }
|
|
||||||
[ -z "$3" ] && { echo "Missing 3rd argument: GHC version"; exit 1; }
|
|
||||||
|
|
||||||
PGRST_GITHUB_COMMIT="$1"
|
|
||||||
SCRIPT_DIR="$2"
|
|
||||||
|
|
||||||
DOCKER_BUILD_DIR="$SCRIPT_DIR/docker-env"
|
|
||||||
# latest is a shortcut documented on https://www.haskell.org/ghcup/guide/#tags-and-shortcuts
|
|
||||||
CABAL_VERSION="latest"
|
|
||||||
GHC_VERSION="$3"
|
|
||||||
|
|
||||||
install_packages() {
|
|
||||||
sudo apt-get update -y
|
|
||||||
sudo apt-get upgrade -y
|
|
||||||
sudo apt-get install -y git build-essential curl libffi-dev libffi7 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5 llvm libnuma-dev zlib1g-dev libpq-dev jq gcc
|
|
||||||
sudo apt-get clean
|
|
||||||
}
|
|
||||||
|
|
||||||
install_ghcup() {
|
|
||||||
export BOOTSTRAP_HASKELL_NONINTERACTIVE=1
|
|
||||||
export BOOTSTRAP_HASKELL_MINIMAL=1
|
|
||||||
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
|
|
||||||
source ~/.ghcup/env
|
|
||||||
}
|
|
||||||
|
|
||||||
install_cabal() {
|
|
||||||
ghcup upgrade
|
|
||||||
ghcup install cabal $CABAL_VERSION
|
|
||||||
ghcup set cabal $CABAL_VERSION
|
|
||||||
}
|
|
||||||
|
|
||||||
install_ghc() {
|
|
||||||
ghcup upgrade
|
|
||||||
ghcup install ghc $GHC_VERSION
|
|
||||||
ghcup set ghc $GHC_VERSION
|
|
||||||
}
|
|
||||||
|
|
||||||
install_packages
|
|
||||||
|
|
||||||
# Add ghcup to the PATH for this session
|
|
||||||
[ -f ~/.ghcup/env ] && source ~/.ghcup/env
|
|
||||||
|
|
||||||
ghcup --version || install_ghcup
|
|
||||||
ghcup set cabal $CABAL_VERSION || install_cabal
|
|
||||||
ghcup set ghc $GHC_VERSION || install_ghc
|
|
||||||
|
|
||||||
cd ~/$SCRIPT_DIR
|
|
||||||
|
|
||||||
# Clone the repository and build the project
|
|
||||||
git clone https://github.com/PostgREST/postgrest.git
|
|
||||||
cd postgrest
|
|
||||||
git checkout $PGRST_GITHUB_COMMIT
|
|
||||||
cabal v2-update && cabal v2-build
|
|
||||||
|
|
||||||
# Strip unused symbols from executable
|
|
||||||
PGRST_BIN=$(cabal exec which postgrest | tail -1)
|
|
||||||
strip $PGRST_BIN
|
|
||||||
|
|
||||||
# Copy the built binary to the Dockerfile directory
|
|
||||||
cp $PGRST_BIN ~/$DOCKER_BUILD_DIR
|
|
||||||
|
|
||||||
# Move and compress the built binary
|
|
||||||
mkdir -p ~/$SCRIPT_DIR/result
|
|
||||||
mv $PGRST_BIN ~/$SCRIPT_DIR/result
|
|
||||||
cd ~/$SCRIPT_DIR
|
|
||||||
tar -cJf result.tar.xz result
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -Eeuo pipefail
|
|
||||||
|
|
||||||
# This script publishes the Docker ARM images to Docker Hub.
|
|
||||||
|
|
||||||
[ -z "$1" ] && { echo "Missing 1st argument: PostgREST github commit SHA"; exit 1; }
|
|
||||||
[ -z "$2" ] && { echo "Missing 2nd argument: Docker repo"; exit 1; }
|
|
||||||
[ -z "$3" ] && { echo "Missing 3rd argument: Docker username"; exit 1; }
|
|
||||||
[ -z "$4" ] && { echo "Missing 4th argument: Docker password"; exit 1; }
|
|
||||||
[ -z "$5" ] && { echo "Missing 5th argument: Build environment directory name"; exit 1; }
|
|
||||||
[ -z "$6" ] && { echo "Missing 6th argument: PostgREST version"; exit 1; }
|
|
||||||
|
|
||||||
PGRST_GITHUB_COMMIT="$1"
|
|
||||||
DOCKER_REPO="$2"
|
|
||||||
DOCKER_USER="$3"
|
|
||||||
DOCKER_PASS="$4"
|
|
||||||
SCRIPT_DIR="$5"
|
|
||||||
PGRST_VERSION="$6"
|
|
||||||
|
|
||||||
DOCKER_BUILD_DIR="$SCRIPT_DIR/docker-env"
|
|
||||||
|
|
||||||
clean_env()
|
|
||||||
{
|
|
||||||
sudo docker logout
|
|
||||||
}
|
|
||||||
|
|
||||||
# Login to Docker
|
|
||||||
sudo docker logout
|
|
||||||
{ echo $DOCKER_PASS | sudo docker login -u $DOCKER_USER --password-stdin; } || { echo "Couldn't login to docker"; exit 1; }
|
|
||||||
|
|
||||||
trap clean_env sigint sigterm exit
|
|
||||||
|
|
||||||
# Move to the docker build environment
|
|
||||||
cd ~/$DOCKER_BUILD_DIR
|
|
||||||
|
|
||||||
# Push final images to Docker hub
|
|
||||||
# NOTE: This command publishes a separate ARM image because the builds cannot
|
|
||||||
# be added to the manifest if they are not in the registry beforehand.
|
|
||||||
# This image must be manually deleted from Docker Hub at the end of the process.
|
|
||||||
sudo docker buildx build --build-arg PGRST_GITHUB_COMMIT=$PGRST_GITHUB_COMMIT \
|
|
||||||
-t $DOCKER_REPO/postgrest:$PGRST_VERSION-arm \
|
|
||||||
--push .
|
|
||||||
|
|
||||||
# Add the arm images to the manifest
|
|
||||||
# NOTE: This assumes that there already is a `postgrest:<version>` image
|
|
||||||
# for the amd64 architecture pushed to Docker Hub
|
|
||||||
sudo docker buildx imagetools create --append -t $DOCKER_REPO/postgrest:$PGRST_VERSION $DOCKER_REPO/postgrest:$PGRST_VERSION-arm
|
|
||||||
[ "$PGRST_VERSION" != "devel" ] && sudo docker buildx imagetools create --append -t $DOCKER_REPO/postgrest:latest $DOCKER_REPO/postgrest:$PGRST_VERSION-arm
|
|
||||||
|
|
||||||
sudo docker logout
|
|
||||||
@@ -87,13 +87,14 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- name: Linux x86-64
|
- name: Linux aarch64
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04-arm
|
||||||
cache: |
|
cache: |
|
||||||
~/.stack/pantry
|
~/.stack/pantry
|
||||||
~/.stack/snapshots
|
~/.stack/snapshots
|
||||||
~/.stack/stack.sqlite3
|
~/.stack/stack.sqlite3
|
||||||
# no artifact for Linux x86-64, because we use the static build
|
artifact: postgrest-ubuntu-aarch64
|
||||||
|
deps: sudo apt-get update && sudo apt-get install libpq-dev
|
||||||
|
|
||||||
- name: MacOS
|
- name: MacOS
|
||||||
runs-on: macos-14
|
runs-on: macos-14
|
||||||
@@ -147,7 +148,6 @@ jobs:
|
|||||||
- name: Strip Executable
|
- name: Strip Executable
|
||||||
run: strip result/postgrest*
|
run: strip result/postgrest*
|
||||||
- name: Save built executable as artifact
|
- name: Save built executable as artifact
|
||||||
if: matrix.artifact
|
|
||||||
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
|
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
|
||||||
with:
|
with:
|
||||||
name: ${{ matrix.artifact }}
|
name: ${{ matrix.artifact }}
|
||||||
|
|||||||
+32
-124
@@ -49,63 +49,6 @@ jobs:
|
|||||||
CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }}
|
CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }}
|
||||||
|
|
||||||
|
|
||||||
arm:
|
|
||||||
name: Build / Cabal - aarch64 GHC 9.4.8
|
|
||||||
if: vars.SSH_ARM_ENABLED
|
|
||||||
runs-on: ubuntu-24.04
|
|
||||||
outputs:
|
|
||||||
remotepath: ${{ steps.Remote-Dir.outputs.remotepath }}
|
|
||||||
env:
|
|
||||||
GITHUB_COMMIT: ${{ github.sha }}
|
|
||||||
GHC_VERSION: '9.4.8'
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
||||||
- id: Remote-Dir
|
|
||||||
name: Unique directory name for the remote build
|
|
||||||
run: echo "remotepath=postgrest-build-$(uuidgen)" >> "$GITHUB_OUTPUT"
|
|
||||||
- name: Copy script files to the remote server
|
|
||||||
uses: appleboy/scp-action@master
|
|
||||||
with:
|
|
||||||
host: ${{ secrets.SSH_ARM_HOST }}
|
|
||||||
username: ubuntu
|
|
||||||
key: ${{ secrets.SSH_ARM_PRIVATE_KEY }}
|
|
||||||
fingerprint: ${{ secrets.SSH_ARM_FINGERPRINT }}
|
|
||||||
source: ".github/scripts/arm/*"
|
|
||||||
target: ${{ steps.Remote-Dir.outputs.remotepath }}
|
|
||||||
strip_components: 3
|
|
||||||
- name: Build ARM
|
|
||||||
uses: appleboy/ssh-action@master
|
|
||||||
env:
|
|
||||||
REMOTE_DIR: ${{ steps.Remote-Dir.outputs.remotepath }}
|
|
||||||
with:
|
|
||||||
host: ${{ secrets.SSH_ARM_HOST }}
|
|
||||||
username: ubuntu
|
|
||||||
key: ${{ secrets.SSH_ARM_PRIVATE_KEY }}
|
|
||||||
fingerprint: ${{ secrets.SSH_ARM_FINGERPRINT }}
|
|
||||||
command_timeout: 120m
|
|
||||||
script_stop: true
|
|
||||||
envs: GITHUB_COMMIT,REMOTE_DIR,GHC_VERSION
|
|
||||||
script: bash ~/$REMOTE_DIR/build.sh "$GITHUB_COMMIT" "$REMOTE_DIR" "$GHC_VERSION"
|
|
||||||
- name: Download binaries from remote server
|
|
||||||
uses: nicklasfrahm/scp-action@main
|
|
||||||
with:
|
|
||||||
direction: download
|
|
||||||
host: ${{ secrets.SSH_ARM_HOST }}
|
|
||||||
username: ubuntu
|
|
||||||
key: ${{ secrets.SSH_ARM_PRIVATE_KEY }}
|
|
||||||
fingerprint: ${{ secrets.SSH_ARM_FINGERPRINT }}
|
|
||||||
source: "${{ steps.Remote-Dir.outputs.remotepath }}/result.tar.xz"
|
|
||||||
target: "result.tar.xz"
|
|
||||||
- name: Extract downloaded binaries
|
|
||||||
run: tar -xvf result.tar.xz && rm result.tar.xz
|
|
||||||
- name: Save aarch64 executable as artifact
|
|
||||||
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
|
|
||||||
with:
|
|
||||||
name: postgrest-ubuntu-aarch64
|
|
||||||
path: result/postgrest
|
|
||||||
if-no-files-found: error
|
|
||||||
|
|
||||||
|
|
||||||
tag:
|
tag:
|
||||||
name: Release / Tag
|
name: Release / Tag
|
||||||
concurrency:
|
concurrency:
|
||||||
@@ -115,11 +58,7 @@ jobs:
|
|||||||
cancel-in-progress: false
|
cancel-in-progress: false
|
||||||
if: |
|
if: |
|
||||||
vars.RELEASE_ENABLED &&
|
vars.RELEASE_ENABLED &&
|
||||||
startsWith(github.ref, 'refs/heads/') &&
|
startsWith(github.ref, 'refs/heads/')
|
||||||
needs.docs.result == 'success' &&
|
|
||||||
needs.test.result == 'success' &&
|
|
||||||
needs.build.result == 'success' &&
|
|
||||||
(needs.arm.result == 'skipped' || success())
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
@@ -127,7 +66,6 @@ jobs:
|
|||||||
- docs
|
- docs
|
||||||
- test
|
- test
|
||||||
- build
|
- build
|
||||||
- arm
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
with:
|
with:
|
||||||
@@ -152,13 +90,10 @@ jobs:
|
|||||||
prepare:
|
prepare:
|
||||||
name: Release / Prepare
|
name: Release / Prepare
|
||||||
if: |
|
if: |
|
||||||
startsWith(github.ref, 'refs/tags/') &&
|
startsWith(github.ref, 'refs/tags/')
|
||||||
needs.build.result == 'success' &&
|
|
||||||
(needs.arm.result == 'skipped' || success())
|
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
needs:
|
needs:
|
||||||
- build
|
- build
|
||||||
- arm
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
- name: Check the version to be released
|
- name: Check the version to be released
|
||||||
@@ -197,7 +132,6 @@ jobs:
|
|||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
needs:
|
needs:
|
||||||
- prepare
|
- prepare
|
||||||
if: success() || needs.prepare.result == 'success'
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
- name: Download all artifacts
|
- name: Download all artifacts
|
||||||
@@ -262,35 +196,58 @@ jobs:
|
|||||||
|
|
||||||
docker:
|
docker:
|
||||||
name: Release / Docker Hub
|
name: Release / Docker Hub
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04-arm
|
||||||
needs:
|
needs:
|
||||||
- prepare
|
- prepare
|
||||||
if: |
|
if: |
|
||||||
vars.DOCKER_REPO && vars.DOCKER_USER &&
|
vars.DOCKER_REPO && vars.DOCKER_USER
|
||||||
(success() || needs.prepare.result == 'success')
|
|
||||||
env:
|
env:
|
||||||
DOCKER_REPO: ${{ vars.DOCKER_REPO }}
|
DOCKER_REPO: ${{ vars.DOCKER_REPO }}
|
||||||
DOCKER_USER: ${{ vars.DOCKER_USER }}
|
|
||||||
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
- name: Download Docker image
|
- name: Download x86-64 Docker image
|
||||||
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
|
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
|
||||||
with:
|
with:
|
||||||
name: postgrest-docker-x86-64
|
name: postgrest-docker-x86-64
|
||||||
|
- name: Download aarch64 binary
|
||||||
|
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
|
||||||
|
with:
|
||||||
|
name: postgrest-ubuntu-aarch64
|
||||||
|
- uses: docker/setup-buildx-action@6524bf65af31da8d45b59e8c27de4bd072b392f5 # v3.8.0
|
||||||
|
- uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
|
||||||
|
with:
|
||||||
|
username: ${{ vars.DOCKER_USER }}
|
||||||
|
password: ${{ secrets.DOCKER_PASS }}
|
||||||
|
- name: Build aarch64 Docker image
|
||||||
|
run: |
|
||||||
|
# This only pushes the image via digest, not a tag. This will not appear
|
||||||
|
# in the image list on Docker Hub, yet. It will be later added to the main
|
||||||
|
# tag's manifest.
|
||||||
|
docker buildx build \
|
||||||
|
-t "$DOCKER_REPO/postgrest" \
|
||||||
|
--platform linux/arm64 \
|
||||||
|
--output push-by-digest=true,type=image,push=true \
|
||||||
|
--metadata-file metadata.json \
|
||||||
|
.
|
||||||
|
echo "SHA256_ARM=$(jq -r '."containerimage.digest"' metadata.json)" >> "$GITHUB_ENV"
|
||||||
- name: Publish images on Docker Hub
|
- name: Publish images on Docker Hub
|
||||||
run: |
|
run: |
|
||||||
docker login -u "$DOCKER_USER" -p "$DOCKER_PASS"
|
|
||||||
docker load -i postgrest-docker.tar.gz
|
docker load -i postgrest-docker.tar.gz
|
||||||
|
|
||||||
docker tag postgrest:latest "$DOCKER_REPO/postgrest:${GITHUB_REF_NAME}"
|
docker tag postgrest:latest "$DOCKER_REPO/postgrest:${GITHUB_REF_NAME}"
|
||||||
docker push "$DOCKER_REPO/postgrest:${GITHUB_REF_NAME}"
|
docker push "$DOCKER_REPO/postgrest:${GITHUB_REF_NAME}"
|
||||||
|
docker buildx imagetools create --append \
|
||||||
|
-t "$DOCKER_REPO/postgrest:${GITHUB_REF_NAME}" \
|
||||||
|
"$DOCKER_REPO/postgrest@$SHA256_ARM"
|
||||||
|
|
||||||
# Only tag 'latest' for full releases
|
# Only tag 'latest' for full releases
|
||||||
if [ "${GITHUB_REF_NAME}" != "devel" ]; then
|
if [ "${GITHUB_REF_NAME}" != "devel" ]; then
|
||||||
echo "Pushing to 'latest' tag for full release of ${GITHUB_REF_NAME} ..."
|
echo "Pushing to 'latest' tag for full release of ${GITHUB_REF_NAME} ..."
|
||||||
docker tag postgrest:latest "$DOCKER_REPO"/postgrest:latest
|
docker tag postgrest:latest "$DOCKER_REPO"/postgrest:latest
|
||||||
docker push "$DOCKER_REPO"/postgrest:latest
|
docker push "$DOCKER_REPO"/postgrest:latest
|
||||||
|
docker buildx imagetools create --append \
|
||||||
|
-t "$DOCKER_REPO/postgrest:latest" \
|
||||||
|
"$DOCKER_REPO/postgrest@$SHA256_ARM"
|
||||||
else
|
else
|
||||||
echo "Skipping push to 'latest' tag for pre-release..."
|
echo "Skipping push to 'latest' tag for pre-release..."
|
||||||
fi
|
fi
|
||||||
@@ -311,52 +268,3 @@ jobs:
|
|||||||
repository: ${{ vars.DOCKER_REPO }}/postgrest
|
repository: ${{ vars.DOCKER_REPO }}/postgrest
|
||||||
short-description: ${{ github.event.repository.description }}
|
short-description: ${{ github.event.repository.description }}
|
||||||
readme-filepath: ./docker-hub-readme.md
|
readme-filepath: ./docker-hub-readme.md
|
||||||
|
|
||||||
|
|
||||||
docker-arm:
|
|
||||||
name: Release / Docker Hub Arm
|
|
||||||
runs-on: ubuntu-24.04
|
|
||||||
needs:
|
|
||||||
- arm
|
|
||||||
- docker
|
|
||||||
env:
|
|
||||||
GITHUB_COMMIT: ${{ github.sha }}
|
|
||||||
DOCKER_REPO: ${{ vars.DOCKER_REPO }}
|
|
||||||
DOCKER_USER: ${{ vars.DOCKER_USER }}
|
|
||||||
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
||||||
- name: Publish images for ARM builds on Docker Hub
|
|
||||||
uses: appleboy/ssh-action@master
|
|
||||||
env:
|
|
||||||
REMOTE_DIR: ${{ needs.arm.outputs.remotepath }}
|
|
||||||
with:
|
|
||||||
host: ${{ secrets.SSH_ARM_HOST }}
|
|
||||||
username: ubuntu
|
|
||||||
key: ${{ secrets.SSH_ARM_PRIVATE_KEY }}
|
|
||||||
fingerprint: ${{ secrets.SSH_ARM_FINGERPRINT }}
|
|
||||||
script_stop: true
|
|
||||||
envs: GITHUB_COMMIT,DOCKER_REPO,DOCKER_USER,DOCKER_PASS,REMOTE_DIR,GITHUB_REF_NAME
|
|
||||||
script: bash ~/$REMOTE_DIR/docker-publish.sh "$GITHUB_COMMIT" "$DOCKER_REPO" "$DOCKER_USER" "$DOCKER_PASS" "$REMOTE_DIR" "$GITHUB_REF_NAME"
|
|
||||||
|
|
||||||
|
|
||||||
clean-arm:
|
|
||||||
name: Build / Cleanup
|
|
||||||
needs:
|
|
||||||
- arm
|
|
||||||
- docker-arm
|
|
||||||
if: ${{ always() && vars.SSH_ARM_ENABLED }}
|
|
||||||
runs-on: ubuntu-24.04
|
|
||||||
env:
|
|
||||||
REMOTE_DIR: ${{ needs.arm.outputs.remotepath }}
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
||||||
- name: Remove uploaded files from server
|
|
||||||
uses: appleboy/ssh-action@master
|
|
||||||
with:
|
|
||||||
host: ${{ secrets.SSH_ARM_HOST }}
|
|
||||||
username: ubuntu
|
|
||||||
key: ${{ secrets.SSH_ARM_PRIVATE_KEY }}
|
|
||||||
fingerprint: ${{ secrets.SSH_ARM_FINGERPRINT }}
|
|
||||||
envs: REMOTE_DIR
|
|
||||||
script: rm -rf $REMOTE_DIR
|
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
# PostgREST docker hub image
|
# PostgREST Docker Hub image for aarch64.
|
||||||
|
# The x86-64 is a single-static-binary image built via Nix, see:
|
||||||
|
# nix/tools/docker/README.md
|
||||||
|
|
||||||
FROM ubuntu:noble@sha256:80dd3c3b9c6cecb9f1667e9290b3bc61b78c2678c02cbdae5f0fea92cc6734ab AS postgrest
|
FROM ubuntu:noble@sha256:80dd3c3b9c6cecb9f1667e9290b3bc61b78c2678c02cbdae5f0fea92cc6734ab AS postgrest
|
||||||
|
|
||||||
Reference in New Issue
Block a user