Skip to content

Commit

Permalink
Run tests in CI and add test-in-docker target.
Browse files Browse the repository at this point in the history
  • Loading branch information
Gerrit91 committed Sep 2, 2020
1 parent 259620c commit d02f826
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 31 deletions.
7 changes: 3 additions & 4 deletions .github/workflows/latest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,9 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Lint
uses: actions-contrib/golangci-lint@master
with:
args: run --timeout 3m
- name: Check (lint) and Test
run: |
make test-in-docker
- name: Build and push Docker image
run: |
docker login -u ${{ secrets.DOCKER_HUB_USER }} -p ${{ secrets.DOCKER_HUB_TOKEN }}
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/pull_request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,9 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Lint
uses: actions-contrib/golangci-lint@master
with:
args: run --timeout 3m
- name: Check (lint) and Test
run: |
make test-in-docker
- name: Build and push Docker image
run: |
docker login -u ${{ secrets.DOCKER_HUB_USER }} -p ${{ secrets.DOCKER_HUB_TOKEN }}
Expand Down
13 changes: 6 additions & 7 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
name: Build image from release tag

on:
push:
tags:
- "v*"
release:
types:
- published

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Lint
uses: actions-contrib/golangci-lint@master
with:
args: run --timeout 3m
- name: Check (lint) and Test
run: |
make test-in-docker
- name: Build and push Docker image
run: |
docker login -u ${{ secrets.DOCKER_HUB_USER }} -p ${{ secrets.DOCKER_HUB_TOKEN }}
Expand Down
7 changes: 7 additions & 0 deletions .golangci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
run:
concurrency: 4
deadline: 10m

linters:
disable:
- unused
20 changes: 12 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -84,36 +84,42 @@ revendor:
.PHONY: clean
clean:
@$(shell find ./example -type f -name "controller-registration.yaml" -exec rm '{}' \;)
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/clean.sh ./cmd/... ./pkg/... ./test/...
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/clean.sh ./cmd/... ./pkg/...

.PHONY: check-generate
check-generate:
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/check-generate.sh $(REPO_ROOT)

.PHONY: check
check:
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/check.sh --golangci-lint-config=./.golangci.yaml ./cmd/... ./pkg/... ./test/...
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/check.sh --golangci-lint-config=./.golangci.yaml ./cmd/... ./pkg/...
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/check-charts.sh ./charts

.PHONY: generate
generate:
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/generate.sh ./charts/... ./cmd/... ./pkg/... ./test/...
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/generate.sh ./charts/... ./cmd/... ./pkg/...

.PHONE: generate-in-docker
generate-in-docker: revendor
echo $(shell git describe --abbrev=0 --tags) > VERSION
docker run --rm -it -v $(PWD):/go/src/github.com/metal-stack/gardener-extension-provider-metal golang:1.15 \
docker run --rm -i -v $(PWD):/go/src/github.com/metal-stack/gardener-extension-provider-metal golang:1.15 \
sh -c "cd /go/src/github.com/metal-stack/gardener-extension-provider-metal \
&& make install-requirements generate \
&& chown -R $(shell id -u):$(shell id -g) ."

.PHONY: format
format:
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/format.sh ./cmd ./pkg ./test
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/format.sh ./cmd ./pkg

.PHONY: test
test:
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/test.sh --skipPackage test/e2e/networkpolicies,test/integration -r ./cmd/... ./pkg/... ./test/...
@$(REPO_ROOT)/vendor/github.com/gardener/gardener/hack/test.sh --skipPackage test/e2e/networkpolicies,test/integration -r ./cmd/... ./pkg/...

.PHONE: test-in-docker
test-in-docker: revendor
docker run --rm -i -v $(PWD):/go/src/github.com/metal-stack/gardener-extension-provider-metal golang:1.15 \
sh -c "cd /go/src/github.com/metal-stack/gardener-extension-provider-metal \
&& make install-requirements check test"

.PHONY: test-cov
test-cov:
Expand All @@ -125,5 +131,3 @@ test-clean:

.PHONY: verify
verify: check format test

.PHONY: verify-extended
1 change: 1 addition & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ require (
github.com/golang/mock v1.4.4-0.20200731163441-8734ec565a4d
github.com/google/go-cmp v0.5.2
github.com/google/uuid v1.1.1
github.com/imdario/mergo v0.3.8
github.com/metal-stack/firewall-controller v0.1.8
github.com/metal-stack/metal-go v0.8.3
github.com/metal-stack/metal-lib v0.5.0
Expand Down
10 changes: 4 additions & 6 deletions pkg/apis/metal/helper/helper.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@
package helper

import (
"encoding/json"
"fmt"

"github.com/imdario/mergo"

"github.com/metal-stack/gardener-extension-provider-metal/pkg/apis/metal"
)

Expand Down Expand Up @@ -50,14 +51,11 @@ func MergeIAMConfig(into *metal.IAMConfig, from *metal.IAMConfig) (*metal.IAMCon
}

merged := *into
tmp, err := json.Marshal(from)
if err != nil {
return nil, err
}
err = json.Unmarshal(tmp, &merged)
err := mergo.Merge(&merged, from, mergo.WithOverride)
if err != nil {
return nil, err
}

return &merged, nil
}

Expand Down
4 changes: 2 additions & 2 deletions pkg/apis/metal/helper/helper_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,11 @@ func TestMergeIAMConfig(t *testing.T) {
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
want, err := MergeIAMConfig(tt.args.into, tt.args.from)
got, err := MergeIAMConfig(tt.args.into, tt.args.from)
if (err != nil) != tt.wantErr {
t.Errorf("MergeIAMConfig() error = %v, wantErr %v", err, tt.wantErr)
}
if diff := cmp.Diff(want, tt.want); diff != "" {
if diff := cmp.Diff(tt.want, got); diff != "" {
t.Errorf("MergeIAMConfig() mismatch (-want +got):\n%s", diff)
}
})
Expand Down

0 comments on commit d02f826

Please sign in to comment.