diff --git a/.github/workflows/package_all.yaml b/.github/workflows/package_all.yaml deleted file mode 100644 index f1831616a..000000000 --- a/.github/workflows/package_all.yaml +++ /dev/null @@ -1,263 +0,0 @@ -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: 'X.Y.Z'" - required: false - build_type: - type: choice - description: "Memgraph Build type. Default value is Release." - default: 'Release' - options: - - Release - - RelWithDebInfo - -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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} --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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} --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 ${{ github.event.inputs.build_type }} - - 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 ${{ github.event.inputs.build_type }} - - 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: 120 - 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 ${{ github.event.inputs.build_type }} - - 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: 120 - 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 ${{ github.event.inputs.build_type }} - - 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/v${{ github.event.inputs.memgraph_version }}/" diff --git a/.github/workflows/package_specific.yaml b/.github/workflows/package_memgraph.yaml similarity index 87% rename from .github/workflows/package_specific.yaml rename to .github/workflows/package_memgraph.yaml index c599f65ef..48a61ca53 100644 --- a/.github/workflows/package_specific.yaml +++ b/.github/workflows/package_memgraph.yaml @@ -1,4 +1,4 @@ -name: Package Specific +name: Package memgraph # TODO(gitbuda): Cleanup docker container if GHA job was canceled. @@ -10,16 +10,17 @@ on: required: false build_type: type: choice - description: "Memgraph Build type. Default value is Release." + description: "Memgraph Build type. Default value is Release" default: 'Release' options: - Release - RelWithDebInfo target_os: type: choice - description: "Target OS for which memgraph will be packaged. Default is Ubuntu 22.04" + description: "Target OS for which memgraph will be packaged. Select 'all' if you want to package for every listed OS. Default is Ubuntu 22.04" default: 'ubuntu-22_04' options: + - all - amzn-2 - centos-7 - centos-9 @@ -36,7 +37,7 @@ on: jobs: amzn-2: - if: ${{ github.event.inputs.target_os == 'amzn-2' }} + if: ${{ github.event.inputs.target_os == 'amzn-2' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -54,7 +55,7 @@ jobs: path: build/output/amzn-2/memgraph*.rpm centos-7: - if: ${{ github.event.inputs.target_os == 'centos-7' }} + if: ${{ github.event.inputs.target_os == 'centos-7' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -72,7 +73,7 @@ jobs: path: build/output/centos-7/memgraph*.rpm centos-9: - if: ${{ github.event.inputs.target_os == 'centos-9' }} + if: ${{ github.event.inputs.target_os == 'centos-9' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -90,7 +91,7 @@ jobs: path: build/output/centos-9/memgraph*.rpm debian-10: - if: ${{ github.event.inputs.target_os == 'debian-10' }} + if: ${{ github.event.inputs.target_os == 'debian-10' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -108,7 +109,7 @@ jobs: path: build/output/debian-10/memgraph*.deb debian-11: - if: ${{ github.event.inputs.target_os == 'debian-11' }} + if: ${{ github.event.inputs.target_os == 'debian-11' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -126,7 +127,7 @@ jobs: path: build/output/debian-11/memgraph*.deb debian-11-arm: - if: ${{ github.event.inputs.target_os == 'debian-11-arm' }} + if: ${{ github.event.inputs.target_os == 'debian-11-arm' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, ARM64, strange] timeout-minutes: 120 steps: @@ -144,7 +145,7 @@ jobs: path: build/output/debian-11-arm/memgraph*.deb debian-11-platform: - if: ${{ github.event.inputs.target_os == 'debian-11-platform' }} + if: ${{ github.event.inputs.target_os == 'debian-11-platform' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -162,7 +163,7 @@ jobs: path: build/output/debian-11/memgraph*.deb docker: - if: ${{ github.event.inputs.target_os == 'docker' }} + if: ${{ github.event.inputs.target_os == 'docker' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -182,7 +183,7 @@ jobs: path: build/output/docker/memgraph*.tar.gz fedora-36: - if: ${{ github.event.inputs.target_os == 'fedora-36' }} + if: ${{ github.event.inputs.target_os == 'fedora-36' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -200,7 +201,7 @@ jobs: path: build/output/fedora-36/memgraph*.rpm ubuntu-18_04: - if: ${{ github.event.inputs.target_os == 'ubuntu-18_04' }} + if: ${{ github.event.inputs.target_os == 'ubuntu-18_04' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -218,7 +219,7 @@ jobs: path: build/output/ubuntu-18.04/memgraph*.deb ubuntu-20_04: - if: ${{ github.event.inputs.target_os == 'ubuntu-20_04' }} + if: ${{ github.event.inputs.target_os == 'ubuntu-20_04' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -236,7 +237,7 @@ jobs: path: build/output/ubuntu-20.04/memgraph*.deb ubuntu-22_04: - if: ${{ github.event.inputs.target_os == 'ubuntu-22_04' }} + if: ${{ github.event.inputs.target_os == 'ubuntu-22_04' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, X64] timeout-minutes: 60 steps: @@ -254,7 +255,7 @@ jobs: path: build/output/ubuntu-22.04/memgraph*.deb ubuntu-22_04-arm: - if: ${{ github.event.inputs.target_os == 'ubuntu-22_04-arm' }} + if: ${{ github.event.inputs.target_os == 'ubuntu-22_04-arm' || github.event.inputs.target_os == 'all' }} runs-on: [self-hosted, DockerMgBuild, ARM64, strange] timeout-minutes: 120 steps: