Skip to content

adding build script to extract stack resources (#180) #25

adding build script to extract stack resources (#180)

adding build script to extract stack resources (#180) #25

Workflow file for this run

#
# Copyright 2020-2023 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
go:
name: Check go tools build
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Setup Go environment
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
with:
go-version: 1.18
- name: Check if index-generator build is working
run: cd index/generator && bash ./build.sh
- name: Test index-generator
run: cd index/generator && go test ./...
- name: Check if registry-library build is working
run: cd registry-library && bash ./build.sh
- name: Check index-server code generation
run: |
cd index/server
export GOPATH=$(go env GOPATH)
go install github.com/deepmap/oapi-codegen/cmd/[email protected]
bash codegen.sh
GEN_DIFFS=$(git diff --name-only --diff-filter=ACMRT | grep .gen.go$ | xargs)
if [[ ! -z "${GEN_DIFFS}" ]]
then
echo "generated source does not match current changes "
exit 1
fi
- name: Run Gosec Security Scanner
run: |
export PATH=$PATH:$(go env GOPATH)/bin
go install github.com/securego/gosec/v2/cmd/[email protected]
bash ./run_gosec.sh
if [[ $? != 0 ]]
then
echo "gosec scanner failed to run "
exit 1
fi
- name: Upload SARIF file
uses: github/codeql-action/upload-sarif@v2
with:
# Path to SARIF file relative to the root of the repository
sarif_file: gosec.sarif
docker:
name: Check docker builds
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Setup Go environment
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
with:
go-version: 1.18
- name: Check license
run: |
export PATH=$PATH:$(go env GOPATH)/bin
go install github.com/google/addlicense@latest
git reset HEAD --hard
bash ./check_licenses.sh
if [[ $? != 0 ]]
then
echo "license headers not found:"
git --no-pager diff
exit 1
fi
- name: Check if index server build is working
run: |
cd index/server
export GOPATH=$(go env GOPATH)
go install github.com/deepmap/oapi-codegen/cmd/[email protected]
bash ./build.sh
- name: Test index server
run: cd index/server && go test ./... -coverprofile cover.out
- name: Check if oci server build is working
run: cd oci-registry && bash ./build.sh
- name: Check if devfile-registry-integration build is working
run: cd tests/integration && bash ./docker-build.sh
- name: Upload coverage to Codecov
uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3.1.4
test_minikube:
name: Test Devfile Registry
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Setup Go environment
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
with:
go-version: 1.18
- name: Setup Minikube
uses: manusa/[email protected]
with:
minikube version: 'v1.21.0'
kubernetes version: 'v1.21.0'
driver: 'docker'
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--addons=ingress'
- name: Run the devfile registry integration tests
run: |
export GOPATH=$(go env GOPATH)
go install github.com/deepmap/oapi-codegen/cmd/[email protected]
bash .ci/run_tests_minikube_linux.sh
test_staging:
name: Test Staging Devfile Registry
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Setup Go environment
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
with:
go-version: 1.18
- name: Run the devfile registry integration tests
run: |
# Run the integration tests
cd tests/integration
bash ./docker-build.sh
docker run --env REGISTRY=https://registry.stage.devfile.io --env IS_TEST_REGISTRY=false devfile-registry-integration