Skip to content
This repository has been archived by the owner on Nov 13, 2024. It is now read-only.

fixed multiple builds issue #62

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
341 changes: 166 additions & 175 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Main build
name: Main Build

on:
push:
Expand All @@ -11,219 +11,210 @@ env:
BRANCH: main

jobs:
build-push-galasabld:
name: Build and push galasabld artefacts
runs-on: ubuntu-latest
strategy:
matrix:
config: [{'name':'linux','arch':'amd64'},{'name':'windows','arch':'amd64'},{'name':'darwin','arch':'amd64'},{'name':'darwin','arch':'arm64'},{'name':'linux','arch':'s390x'}]

steps:
- name: Checkout code
uses: actions/checkout@v4
build-Push-galasabld :
name: Build and push Galasabld artefacts
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup up Go
uses: actions/setup-go@v5
with:
go-version: 1.22

- name: Build galasabld using the makefile
run: |
echo $REGISTRY
make all

- name: Login to Github Container Regitery
uses: docker/login-action@v3
with:
registry: ${{env.REGISTRY}}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for Galasabld Image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{env.REGISTRY}}/${{env.NAMESPACE}}/galasabld-amd64

- name: Build galasa Image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld
build-args: platform=linux-amd64
load: true
tags: galasabld-amd64:${{env.IMAGE_TAG}}

- name: Testing Galasabld Image
run: |
docker run --rm galasabld-amd64:${{env.IMAGE_TAG}}

- name: Build and push Galsabld Image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld
build-args: platform=linux-amd64
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}

- name: Push Galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-linux-amd64
path: bin/galasabld-linux-amd64

- name: Push Galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-windows-amd64
path: bin/galasabld-windows-amd64

- name: Push Galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-darwin-amd64
path: bin/galasabld-darwin-amd64

- name: Push Galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-darwin-arm64
path: bin/galasabld-darwin-arm64

- name: Push Galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-linux-s390x
path: bin/galasabld-linux-s390x

- name: Setup up Go
uses: actions/setup-go@v5
with:
go-version: 1.22

- name: Build galasabld using the Makefile
run: |
echo $REGISTRY
make all

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for galasabld image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/galasabld-amd64

- name: Build galasabld image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld
build-args: platform=linux-amd64
load: true
tags: galasabld-amd64:${{ env.IMAGE_TAG }}

- name: Test galasabld image
run: |
docker run --rm galasabld-amd64:${{ env.IMAGE_TAG }}

- name: Build and push galasabld image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld
build-args: platform=linux-amd64
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}

- name: Push galasabld executables
uses: actions/upload-artifact@v4
with:
name: galasabld-${{matrix.config.name}}-${{matrix.config.arch}}
path: bin/galasabld-${{matrix.config.name}}-${{matrix.config.arch}}

build-push-galasabld-ibm:
name: Build and push galasabld-ibm artefact
build-Push-galasabld-ibm:
name: Build and Push Galasabld IBM Image
runs-on: ubuntu-latest
needs: build-push-galasabld
needs: build-Push-galasabld

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Login to GitHub Container Registry
- name: Login to Github Container Regitery
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
registry: ${{env.REGISTRY}}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for galasabld-ibm image
- name: Extract metadata for Galasabld Image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/galasabld-ibm
images: ${{env.REGISTRY}}/${{env.NAMESPACE}}/galasabld-ibm

- name: Build galasabld-ibm image for testing
- name: Build galasa Image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld-ibm
build-args: |
dockerRepository=ghcr.io
branch=${{ env.BRANCH }}
branch=${{env.BRANCH}}
load: true
tags: galasabld-ibm:${{ env.IMAGE_TAG }}
tags: galasabld-ibm:${{env.IMAGE_TAG}}

- name: Test galasabld-ibm image
- name: Testing Galasabld Image
run: |
docker run --rm galasabld-ibm:${{ env.IMAGE_TAG }}
docker run --rm galasabld-ibm:${{env.IMAGE_TAG}}

- name: Build and push galasabld-ibm image
- name: Build and push Galsabld-Ibm Image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/galasabld/dockerfile.galasabld-ibm
build-args: |
dockerRepository=ghcr.io
branch=${{ env.BRANCH }}
branch=${{env.BRANCH}}
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}


build-push-openapi2beans:
name: Build and push openapi2beans artefacts
runs-on: ubuntu-latest
strategy:
matrix:
config: [{'name':'darwin','arch':'arm64'},{'name':'darwin','arch':'x86_64'},{'name':'linux','arch':'x86_64'}]

steps:
- name: Checkout code
uses: actions/checkout@v4
build-Push-openapi2beans:
name: Build and push openapi2beans artefacts
runs-on: ubuntu-latest

- name: Setup up Go
uses: actions/setup-go@v5
with:
go-version: 1.22

- name: Build openapi2beans using the Makefile
run: |
make all -C openapi2beans
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for openapi2beans image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/openapi2beans

- name: Build openapi2beans image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/openapi2beans/dockerfile.openapi2beans
build-args: platform=linux-x86_64
load: true
tags: openapi2beans:${{ env.IMAGE_TAG }}

- name: Test openapi2beans image
run: |
docker run --rm openapi2beans:${{ env.IMAGE_TAG }}

- name: Build and push openapi2beans image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/openapi2beans/dockerfile.openapi2beans
build-args: platform=linux-x86_64
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}

- name: Push openapi2beans executables
uses: actions/upload-artifact@v4
with:
name: openapi2beans-${{matrix.config.name}}-${{matrix.config.arch}}
path: openapi2beans/bin/openapi2beans-${{matrix.config.name}}-${{matrix.config.arch}}
- name: Setup up Go
uses: actions/setup-go@v5
with:
go-version: 1.22

- name: Build openapi2beans using the makefile
run: |
make all -C openapi2beans/

- name: Login to Github Container Regitery
uses: docker/login-action@v3
with:
registry: ${{env.REGISTRY}}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for openapi2beans Image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{env.REGISTRY}}/${{env.NAMESPACE}}/openapi2beans

build-push-buildutils-executables:
name: Build and push buildutils repository executables
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup up Go
uses: actions/setup-go@v5
with:
go-version: 1.22
- name: Build openapi2beans Image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/openapi2beans/dockerfile.openapi2beans
build-args: platform=linux-x86_64
load: true
tags: openapi2beans:${{env.IMAGE_TAG}}

- name: Testing openapi2beans Image
run: |
docker run --rm openapi2beans:${{env.IMAGE_TAG}}

- name: Build and push openapi2beans Image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/openapi2beans/dockerfile.openapi2beans
build-args: platform=linux-x86_64
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}

- name: Build galasabld using the Makefile
run: |
make all

- name: Build openapi2beans using the Makefile
run: |
make all -C openapi2beans

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata for buildutils-executables image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/buildutils-executables

- name: Build and push buildutils-executables image
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/dockerfile.buildutils
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}
- name: Push openapi2beans executables
uses: actions/upload-artifact@v4
with:
name: openapi2beans-darwin-arm64
path: openapi2beans/bin/openapi2beans-darwin-arm64

- name: Push openapi2beans executables
uses: actions/upload-artifact@v4
with:
name: openapi2beans-darwin-x86_64
path: openapi2beans/bin/openapi2beans-darwin-x86_64

- name: Push openapi2beans executables
uses: actions/upload-artifact@v4
with:
name: openapi2beans-linux-x86_64
path: openapi2beans/bin/openapi2beans-linux-x86_64

Loading