6545283dac
* add to package_all
* add separate workflow
* make reduced jobs version for testing
* typo
* exclude amzn-2 in init script, because isort 5.12. fails to install
* change dir name
* move env var for release version
* bugfix
* Revert "make reduced jobs version for testing"
This reverts commit 7bb75f34a4
.
* remove releaes folder
* extend timeout for arm builds
* increase timeout limit to dangerous levels
* revert timeouts, fix upload naming
* remove untested workflow
257 lines
8.0 KiB
YAML
257 lines
8.0 KiB
YAML
name: Package All
|
|
|
|
# TODO(gitbuda): Cleanup docker container if GHA job was canceled.
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
memgraph_version:
|
|
description: "Memgraph version to upload as. If empty upload is skipped. Format: 'vX.Y.Z'"
|
|
required: false
|
|
|
|
jobs:
|
|
centos-7:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package centos-7
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: centos-7
|
|
path: build/output/centos-7/memgraph*.rpm
|
|
|
|
centos-9:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package centos-9
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: centos-9
|
|
path: build/output/centos-9/memgraph*.rpm
|
|
|
|
debian-10:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package debian-10
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debian-10
|
|
path: build/output/debian-10/memgraph*.deb
|
|
|
|
debian-11:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package debian-11
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debian-11
|
|
path: build/output/debian-11/memgraph*.deb
|
|
|
|
docker:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
cd release/package
|
|
./run.sh package debian-11 --for-docker
|
|
./run.sh docker
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: docker
|
|
path: build/output/docker/memgraph*.tar.gz
|
|
|
|
ubuntu-1804:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package ubuntu-18.04
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ubuntu-18.04
|
|
path: build/output/ubuntu-18.04/memgraph*.deb
|
|
|
|
ubuntu-2004:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package ubuntu-20.04
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ubuntu-20.04
|
|
path: build/output/ubuntu-20.04/memgraph*.deb
|
|
|
|
ubuntu-2204:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package ubuntu-22.04
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ubuntu-22.04
|
|
path: build/output/ubuntu-22.04/memgraph*.deb
|
|
|
|
debian-11-platform:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package debian-11 --for-platform
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debian-11-platform
|
|
path: build/output/debian-11/memgraph*.deb
|
|
|
|
fedora-36:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package fedora-36
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: fedora-36
|
|
path: build/output/fedora-36/memgraph*.rpm
|
|
|
|
amzn-2:
|
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package amzn-2
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: amzn-2
|
|
path: build/output/amzn-2/memgraph*.rpm
|
|
|
|
debian-11-arm:
|
|
runs-on: [self-hosted, DockerMgBuild, ARM64, strange]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package debian-11-arm
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debian-11-aarch64
|
|
path: build/output/debian-11-arm/memgraph*.deb
|
|
|
|
ubuntu-2204-arm:
|
|
runs-on: [self-hosted, DockerMgBuild, ARM64, strange]
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: "Set up repository"
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0 # Required because of release/get_version.py
|
|
- name: "Build package"
|
|
run: |
|
|
./release/package/run.sh package ubuntu-22.04-arm
|
|
- name: "Upload package"
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ubuntu-22.04-aarch64
|
|
path: build/output/ubuntu-22.04-arm/memgraph*.deb
|
|
|
|
upload-to-s3:
|
|
# only run upload if we specified version. Allows for runs without upload
|
|
if: "${{ github.event.inputs.memgraph_version != '' }}"
|
|
needs: [centos-7, centos-9, debian-10, debian-11, docker, ubuntu-1804, ubuntu-2004, ubuntu-2204, debian-11-platform, fedora-36, amzn-2, debian-11-arm, ubuntu-2204-arm]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Download artifacts
|
|
uses: actions/download-artifact@v3
|
|
with:
|
|
# name: # if name input parameter is not provided, all artifacts are downloaded
|
|
# and put in directories named after each one.
|
|
path: build/output/release
|
|
- name: Upload to S3
|
|
uses: jakejarvis/s3-sync-action@v0.5.1
|
|
env:
|
|
AWS_S3_BUCKET: "download.memgraph.com"
|
|
AWS_ACCESS_KEY_ID: ${{ secrets.S3_AWS_ACCESS_KEY_ID }}
|
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.S3_AWS_SECRET_ACCESS_KEY }}
|
|
AWS_REGION: "eu-west-1"
|
|
SOURCE_DIR: "build/output/release"
|
|
DEST_DIR: "memgraph/${{ github.event.inputs.memgraph_version }}/"
|