Skip to content

Commit

Permalink
merge with main
Browse files Browse the repository at this point in the history
  • Loading branch information
jirevwe committed Sep 5, 2024
2 parents decebbc + e89903f commit 2b3328c
Show file tree
Hide file tree
Showing 166 changed files with 5,099 additions and 1,949 deletions.
128 changes: 107 additions & 21 deletions .github/workflows/build-image.yml
Original file line number Diff line number Diff line change
@@ -1,36 +1,122 @@
name: Build docker image
name: Build and Push Docker Images

on:
workflow_dispatch:
inputs:
name:
description: "Manual workflow name"
required: true

push:
tags:
- v*

env:
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
DOCKER_HUB_TOKEN: ${{ secrets.DOCKER_HUB_TOKEN }}
IMAGE_NAME: getconvoy/convoy
RELEASE_VERSION: ${{ github.ref_name }}

jobs:
deploy:
runs-on: "ubuntu-latest"
build_ui:
name: Build UI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build Artifact
run: "make ui_install type=ce"

- name: Archive Build artifacts
uses: actions/upload-artifact@v4
with:
name: dist-without-markdown
path: |
web/ui/dashboard/dist
!web/ui/dashboard/dist/**/*.md
build-and-push-arch:
runs-on: ubuntu-latest
needs: [build_ui]
strategy:
matrix:
include:
- arch: amd64
platform: linux/amd64
dockerfile: release.Dockerfile
- arch: arm64
platform: linux/arm64
dockerfile: release.Dockerfile

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Download Build Artifact
uses: actions/download-artifact@v4
with:
name: dist-without-markdown
path: api/ui/build

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.21

- name: Checkout code
uses: actions/checkout@v2
- name: Get and verify dependencies
run: go mod tidy && go mod download && go mod verify

- name: Get the version
id: get_version
run: echo ::set-output name=tag::$(cat VERSION)
- name: Go vet
run: go vet ./...

- name: Authenticate
uses: actions-hub/docker/login@master
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.PAT }}
DOCKER_REGISTRY_URL: ghcr.io
- name: Build app to make sure there are zero issues
run: |
export CGO_ENABLED=0
export GOOS=linux
export GOARCH=${{ matrix.arch }}
go build -o convoy ./cmd
- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ env.DOCKER_HUB_USERNAME }}
password: ${{ env.DOCKER_HUB_TOKEN }}

- name: Build and push arch specific images
uses: docker/build-push-action@v6
with:
context: .
file: ${{ matrix.dockerfile }}
platforms: ${{ matrix.platform }}
push: true
tags: |
${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }}-${{ matrix.arch }}
build-args: |
ARCH=${{ matrix.arch }}
build-and-push-default:
runs-on: ubuntu-latest
needs: [build-and-push-arch]
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ env.DOCKER_HUB_USERNAME }}
password: ${{ env.DOCKER_HUB_TOKEN }}

- name: Build latest image
run: docker build -t ghcr.io/${GITHUB_REPOSITORY}:${{ steps.get_version.outputs.tag }} .
- name: Create and push manifest for latest
run: |
docker buildx imagetools create -t ${{ env.IMAGE_NAME }}:latest \
${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }}-amd64 \
${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }}-arm64
- name: Push
uses: actions-hub/docker@master
with:
args: push ghcr.io/${GITHUB_REPOSITORY}:${{ steps.get_version.outputs.tag }}
- name: Create and push manifest for version
run: |
docker buildx imagetools create -t ${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }} \
${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }}-amd64 \
${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }}-arm64
34 changes: 0 additions & 34 deletions .github/workflows/do-deploy.yml

This file was deleted.

26 changes: 16 additions & 10 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ jobs:
os: [ubuntu-latest, macos-latest]
postgres-version: ["15"]
redis-version: ["6.2.6"]
typesense-version: ["0.24.0"]

runs-on: ubuntu-latest
services:
Expand All @@ -36,12 +35,6 @@ jobs:
redis-version: ${{ matrix.redis-version }}
redis-port: 6379

- name: Start Typesense v${{ matrix.typesense-version }}
uses: jirevwe/typesense-github-action@v1.0.1
with:
typesense-version: ${{ matrix.typesense-version }}
typesense-api-key: some-api-key

- name: Get the version
id: get_version
run: echo ::set-output name=tag::$(echo ${GITHUB_SHA:8})
Expand Down Expand Up @@ -97,6 +90,19 @@ jobs:
TEST_REDIS_SCHEME: redis
TEST_REDIS_HOST: localhost
TEST_REDIS_PORT: 6379
TEST_TYPESENSE_HOST: http://localhost:8108
TEST_TYPESENSE_API_KEY: some-api-key
TEST_SEARCH_TYPE: typesense

- name: Run integration tests (with test containers)
run: make docker_e2e_tests
env:
TEST_LICENSE_KEY: ${{ secrets.CONVOY_TEST_LICENSE_KEY }}
TEST_DB_SCHEME: postgres
TEST_DB_HOST: localhost
TEST_DB_USERNAME: postgres
TEST_DB_PASSWORD: postgres
TEST_DB_DATABASE: convoy
TEST_DB_OPTIONS: sslmode=disable&connect_timeout=30
TEST_DB_PORT: 5432
TEST_REDIS_SCHEME: redis
TEST_REDIS_HOST: localhost
TEST_REDIS_PORT: 6379

83 changes: 0 additions & 83 deletions .github/workflows/immune-test.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
name: lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: golangci-lint
uses: golangci/golangci-lint-action@v2
with:
Expand Down
78 changes: 0 additions & 78 deletions .github/workflows/release-ee.yml

This file was deleted.

Loading

0 comments on commit 2b3328c

Please sign in to comment.