Skip to content

Commit

Permalink
Merge pull request #26 from CQEN-QDCE/feature/build_deploy_tools
Browse files Browse the repository at this point in the history
Feature/build deploy tools
  • Loading branch information
gagf01 authored Jul 29, 2024
2 parents 9dd5266 + 512d87e commit c23137a
Show file tree
Hide file tree
Showing 19 changed files with 226 additions and 578 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/build_release_cli.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Build and Release CLI

on:
release:
types: [published]

jobs:
build-release:
runs-on: ubuntu-latest
name: Build and Release CLI
steps:
- name: Checkout
uses: actions/checkout@main
- name: Setup Go
uses: actions/setup-go@main
with:
go-version-file: './go.mod'
- name: Build CLI
run: go build -o ./ceai ./cmd/cli
- name: Zip CLI
run: zip -r ceai-cli-linux-${{ github.ref_name }}.zip ./ceai
- name: Upload to Release
uses: Shopify/upload-to-release@master
with:
name: ceai-cli-linux-${{ github.ref_name }}.zip
path: ./ceai-cli-linux-${{ github.ref_name }}.zip
repo-token: ${{ secrets.GITHUB_TOKEN }}
9 changes: 9 additions & 0 deletions .github/workflows/contrib-tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: Contributions tests

on:
pull_request:
branches: ["release/*", "main"]

jobs:
go-validations:
uses: ./.github/workflows/go-validations.yaml
21 changes: 21 additions & 0 deletions .github/workflows/go-validations.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Go Validations

on: [ workflow_call ]

jobs:
lint:
runs-on: ubuntu-latest
name: Validations Go
steps:
- name: Checkout
uses: actions/checkout@main
- name: Setup Go
uses: actions/setup-go@main
with:
go-version-file: './go.mod'
- name: StaticCheck
run: |
go install "honnef.co/go/tools/cmd/staticcheck@latest"
$(go env GOPATH)/bin/staticcheck ./...
- name: GoVulnCheck
uses: golang/govulncheck-action@v1
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
############################
# STEP 1 build executable binary
############################
FROM golang:1.18 AS builder
FROM golang:1.22 AS builder

#Copy source files
ENV GOPATH=/go
Expand Down Expand Up @@ -35,7 +35,7 @@ RUN cp ./openshift/kubeconfig /go/bin/kubeconfig
############################
# STEP 2 build a small image
############################
FROM registry.access.redhat.com/ubi8/ubi:latest
FROM registry.access.redhat.com/ubi9

# Copy our static executable.
COPY --from=builder /go/bin /go/bin
Expand Down
9 changes: 4 additions & 5 deletions cmd/server/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,7 @@ func main() {
}

//API Security validation to support OpenAPI security scheme
var fnAuth openapi3filter.AuthenticationFunc
fnAuth = Authenticate
var fnAuth openapi3filter.AuthenticationFunc = Authenticate
fnCallLog := CustomCallLogFunction

options := &apifirst.RouterOptions{
Expand Down Expand Up @@ -90,7 +89,7 @@ func Authenticate(ctx context.Context, authenticationInput *openapi3filter.Authe
gatewaySecretHeaderValue := authenticationInput.RequestValidationInput.Request.Header.Get(gatewaySecretHeaderName)

if gatewaySecret != gatewaySecretHeaderValue {
return errors.New("Gateway secrets does not match.")
return errors.New("gateway secrets does not match")
}
case "Username", "UserRoles":
userInfoHeaderName := authenticationInput.SecurityScheme.Name
Expand All @@ -100,7 +99,7 @@ func Authenticate(ctx context.Context, authenticationInput *openapi3filter.Authe
return errors.New(authenticationInput.SecuritySchemeName + " not supplied by Gateway.")
}
default:
return errors.New("Unimplemented security scheme.")
return errors.New("unimplemented security scheme")
}

return nil
Expand All @@ -117,7 +116,7 @@ func CustomCallLogFunction(request *http.Request, response *apifirst.ResponseWri
}
}

log.Printf(output)
log.Print(output)

return nil
}
58 changes: 25 additions & 33 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,67 +1,58 @@
module github.com/CQEN-QDCE/ceai-cqen-admin-api

go 1.22.0

toolchain go1.22.4
go 1.22.5

require (
github.com/CQEN-QDCE/aws-sso-scim-goclient v0.0.0-20221212183104-038864c99b62
github.com/Nerzal/gocloak/v13 v13.9.0
github.com/aws/aws-sdk-go-v2 v1.30.0
github.com/aws/aws-sdk-go-v2/config v1.27.21
github.com/aws/aws-sdk-go-v2/credentials v1.17.21
github.com/aws/aws-sdk-go-v2/service/organizations v1.28.1
github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.26.1
github.com/getkin/kin-openapi v0.125.0
github.com/aws/aws-sdk-go-v2 v1.30.3
github.com/aws/aws-sdk-go-v2/config v1.27.27
github.com/aws/aws-sdk-go-v2/credentials v1.17.27
github.com/aws/aws-sdk-go-v2/service/organizations v1.30.2
github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.27.3
github.com/getkin/kin-openapi v0.126.0
github.com/gorilla/mux v1.8.1
github.com/joho/godotenv v1.5.1
github.com/manifoldco/promptui v0.9.0
github.com/openshift/api v0.0.0-20240527133614-ba11c1587003
github.com/openshift/api v0.0.0-20240722135205-ae4f370f361f
github.com/openshift/client-go v0.0.0-20240528061634-b054aa794d87
github.com/rakyll/statik v0.1.7
github.com/spf13/cobra v1.8.1
gopkg.in/yaml.v3 v3.0.1
k8s.io/api v0.30.1
k8s.io/apimachinery v0.30.1
k8s.io/client-go v0.30.1
)

require (
github.com/golang-jwt/jwt/v5 v5.0.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
k8s.io/api v0.30.3
k8s.io/apimachinery v0.30.3
k8s.io/client-go v0.30.3
)

require (
github.com/BurntSushi/toml v0.3.1 // indirect
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.8 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.12 // indirect
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.12 // indirect
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.11 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.15 // indirect
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.15 // indirect
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.14 // indirect
github.com/aws/aws-sdk-go-v2/service/sso v1.21.1 // indirect
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.25.1 // indirect
github.com/aws/aws-sdk-go-v2/service/sts v1.29.1 // indirect
github.com/aws/smithy-go v1.20.2 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.3 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.17 // indirect
github.com/aws/aws-sdk-go-v2/service/sso v1.22.4 // indirect
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.4 // indirect
github.com/aws/aws-sdk-go-v2/service/sts v1.30.3 // indirect
github.com/aws/smithy-go v1.20.3 // indirect
github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
github.com/evanphx/json-patch v4.12.0+incompatible // indirect
github.com/go-logr/logr v1.4.1 // indirect
github.com/go-openapi/jsonpointer v0.20.2 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/jsonreference v0.20.2 // indirect
github.com/go-openapi/swag v0.22.8 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/go-resty/resty/v2 v2.7.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang-jwt/jwt/v5 v5.0.0 // indirect
github.com/golang/protobuf v1.5.4 // indirect
github.com/google/gnostic v0.5.7-v3refs // indirect
github.com/google/gnostic-models v0.6.8 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/imdario/mergo v0.3.6 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/invopop/yaml v0.2.0 // indirect
github.com/invopop/yaml v0.3.1 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
Expand All @@ -84,6 +75,7 @@ require (
google.golang.org/appengine v1.6.7 // indirect
google.golang.org/protobuf v1.33.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
k8s.io/klog/v2 v2.120.1 // indirect
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect
k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect
Expand Down
Loading

0 comments on commit c23137a

Please sign in to comment.