mirror of
https://github.com/valitydev/botkube.git
synced 2024-11-06 08:25:19 +00:00
Merge branch 'source_develop' into ft/TD-74
# Conflicts: # hack/goreleaser.sh
This commit is contained in:
commit
fb5011be59
3
.github/workflows/artifacts.yml
vendored
3
.github/workflows/artifacts.yml
vendored
@ -30,8 +30,7 @@ jobs:
|
||||
uses: goreleaser/goreleaser-action@v2
|
||||
with:
|
||||
install-only: true
|
||||
# Newer goreleaser version doesn't allow builds with "latest" tag
|
||||
version: v0.179.0
|
||||
version: latest
|
||||
- name: Run GoReleaser
|
||||
run: make release-snapshot
|
||||
- name: Install Helm
|
||||
|
@ -1,58 +1,59 @@
|
||||
project_name: botkube
|
||||
before:
|
||||
hooks:
|
||||
- go mod download
|
||||
builds:
|
||||
- id: botkube
|
||||
binary: botkube
|
||||
main: cmd/botkube/main.go
|
||||
ldflags: &ldflags
|
||||
- -s -w
|
||||
-X github.com/infracloudio/botkube/pkg/version.Version={{ .Tag }}
|
||||
-X github.com/infracloudio/botkube/pkg/version.GitCommitID={{ .Commit }}
|
||||
-X github.com/infracloudio/botkube/pkg/version.BuildDate={{ .Date }}
|
||||
env:
|
||||
- CGO_ENABLED=0
|
||||
goos:
|
||||
- linux
|
||||
goarch:
|
||||
- amd64
|
||||
- arm
|
||||
- arm64
|
||||
goarm:
|
||||
- 7
|
||||
- id: botkube
|
||||
binary: botkube
|
||||
main: cmd/botkube/main.go
|
||||
ldflags: &ldflags
|
||||
- -s -w
|
||||
-X github.com/infracloudio/botkube/pkg/version.Version={{ .Tag }}
|
||||
-X github.com/infracloudio/botkube/pkg/version.GitCommitID={{ .Commit }}
|
||||
-X github.com/infracloudio/botkube/pkg/version.BuildDate={{ .Date }}
|
||||
env:
|
||||
- CGO_ENABLED=0
|
||||
goos:
|
||||
- linux
|
||||
goarch:
|
||||
- amd64
|
||||
- arm
|
||||
- arm64
|
||||
goarm:
|
||||
- 7
|
||||
snapshot:
|
||||
name_template: "{{ .Tag }}"
|
||||
changelog:
|
||||
skip: true
|
||||
dockers:
|
||||
- image_templates:
|
||||
- 'ghcr.io/infracloudio/botkube:{{ .Tag }}-amd64'
|
||||
use: buildx
|
||||
dockerfile: 'build/Dockerfile'
|
||||
build_flag_templates:
|
||||
- "--platform=linux/amd64"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
- image_templates:
|
||||
- 'ghcr.io/infracloudio/botkube:{{ .Tag }}-arm64'
|
||||
use: buildx
|
||||
goarch: arm64
|
||||
dockerfile: 'build/Dockerfile'
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm64"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
- image_templates:
|
||||
- 'ghcr.io/infracloudio/botkube:{{ .Tag }}-armv7'
|
||||
use: buildx
|
||||
goarch: arm
|
||||
goarm: 7
|
||||
dockerfile: 'build/Dockerfile'
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
- image_templates:
|
||||
- "ghcr.io/infracloudio/botkube:{{ .Tag }}-amd64"
|
||||
use: buildx
|
||||
dockerfile: "build/Dockerfile"
|
||||
build_flag_templates:
|
||||
- "--platform=linux/amd64"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
- image_templates:
|
||||
- "ghcr.io/infracloudio/botkube:{{ .Tag }}-arm64"
|
||||
use: buildx
|
||||
goarch: arm64
|
||||
dockerfile: "build/Dockerfile"
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm64"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
- image_templates:
|
||||
- "ghcr.io/infracloudio/botkube:{{ .Tag }}-armv7"
|
||||
use: buildx
|
||||
goarch: arm
|
||||
goarm: 7
|
||||
dockerfile: "build/Dockerfile"
|
||||
build_flag_templates:
|
||||
- "--platform=linux/arm"
|
||||
- "--build-arg=botkube_version={{ .Tag }}"
|
||||
|
||||
docker_manifests:
|
||||
- name_template: ghcr.io/infracloudio/botkube:{{ .Tag }}
|
||||
image_templates:
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-amd64
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-arm64
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-armv7
|
||||
- name_template: ghcr.io/infracloudio/botkube:{{ .Tag }}
|
||||
image_templates:
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-amd64
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-arm64
|
||||
- ghcr.io/infracloudio/botkube:{{ .Tag }}-armv7
|
||||
|
@ -29,12 +29,12 @@ Now you can build and run BotKube by one of the following ways
|
||||
|
||||
### Build the container image
|
||||
|
||||
1. This will build BotKube and create a new container image tagged as `infracloudio/botkube:latest`
|
||||
1. This will build BotKube and create a new container image tagged as `ghcr.io/infracloudio/botkube:v9.99.9-dev`
|
||||
```sh
|
||||
$ make build
|
||||
$ make container-image
|
||||
$ docker tag infracloudio/botkube:latest-amd64 <your_account>/botkube:latest
|
||||
$ docker push <your_account>/botkube:latest
|
||||
$ docker tag ghcr.io/infracloudio/botkube:v9.99.9-dev-amd64 <your_account>/botkube:v9.99.9-dev
|
||||
$ docker push <your_account>/botkube:v9.99.9-dev
|
||||
```
|
||||
Where `<your_account>` is Docker hub account to which you can push the image
|
||||
|
||||
@ -53,7 +53,7 @@ Now you can build and run BotKube by one of the following ways
|
||||
--set settings.clustername=<CLUSTER_NAME> \
|
||||
--set settings.kubectl.enabled=<ALLOW_KUBECTL> \
|
||||
--set image.repository=<your_account>/botkube \
|
||||
--set image.tag=latest \
|
||||
--set image.tag=v9.99.9-dev \
|
||||
infracloudio/botkube
|
||||
```
|
||||
|
||||
|
2
Makefile
2
Makefile
@ -50,7 +50,7 @@ gorelease:
|
||||
@echo "Publishing release with goreleaser"
|
||||
@./hack/goreleaser.sh release
|
||||
|
||||
# Build project and push dev images with latest tag
|
||||
# Build project and push dev images with v9.99.9-dev tag
|
||||
release-snapshot:
|
||||
@./hack/goreleaser.sh release_snapshot
|
||||
|
||||
|
1
go.mod
1
go.mod
@ -28,6 +28,7 @@ require (
|
||||
github.com/sirupsen/logrus v1.7.0
|
||||
github.com/stretchr/testify v1.7.0
|
||||
go.uber.org/multierr v1.2.0 // indirect
|
||||
golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 // indirect
|
||||
golang.org/x/net v0.0.0-20211209124913-491a49abca63 // indirect
|
||||
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f // indirect
|
||||
golang.org/x/sys v0.0.0-20211210111614-af8b64212486 // indirect
|
||||
|
5
go.sum
5
go.sum
@ -513,8 +513,9 @@ golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8U
|
||||
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20201217014255-9d1352758620 h1:3wPMTskHO3+O6jqTEXyFcsnuxMQOqYSaHsDxcbUXpqA=
|
||||
golang.org/x/crypto v0.0.0-20201217014255-9d1352758620/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
|
||||
golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 h1:kUhD7nTDoI3fVd9G4ORWrbV5NY0liEs/Jg2pv5f+bBA=
|
||||
golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
|
||||
@ -582,6 +583,7 @@ golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81R
|
||||
golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.0.0-20211209124913-491a49abca63 h1:iocB37TsdFuN6IBRZ+ry36wrkoV51/tl5vOWqkcPGvY=
|
||||
golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
@ -645,6 +647,7 @@ golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||
golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20211210111614-af8b64212486 h1:5hpz5aRr+W1erYCL5JRhSUBJRph7l9XkNveoExlrKYk=
|
||||
golang.org/x/sys v0.0.0-20211210111614-af8b64212486/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
|
||||
|
@ -29,18 +29,18 @@ prepare() {
|
||||
|
||||
release_snapshot() {
|
||||
prepare
|
||||
export GORELEASER_CURRENT_TAG=latest
|
||||
export GORELEASER_CURRENT_TAG=v9.99.9-dev
|
||||
goreleaser release --rm-dist --snapshot --skip-publish
|
||||
# Push images
|
||||
docker push ghcr.io/valitydev/botkube:latest-amd64
|
||||
docker push ghcr.io/valitydev/botkube:latest-arm64
|
||||
docker push ghcr.io/valitydev/botkube:latest-armv7
|
||||
docker push ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-amd64
|
||||
docker push ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-arm64
|
||||
docker push ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-armv7
|
||||
# Create manifest
|
||||
docker manifest create ghcr.io/valitydev/botkube:latest \
|
||||
--amend ghcr.io/valitydev/botkube:latest-amd64 \
|
||||
--amend ghcr.io/valitydev/botkube:latest-arm64 \
|
||||
--amend ghcr.io/valitydev/botkube:latest-armv7
|
||||
docker manifest push ghcr.io/valitydev/botkube:latest
|
||||
docker manifest create ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG} \
|
||||
--amend ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-amd64 \
|
||||
--amend ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-arm64 \
|
||||
--amend ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}-armv7
|
||||
docker manifest push ghcr.io/valitydev/botkube:${GORELEASER_CURRENT_TAG}
|
||||
}
|
||||
|
||||
build() {
|
||||
@ -49,7 +49,7 @@ build() {
|
||||
-v $PWD:/go/src/github.com/valitydev/botkube \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-w /go/src/github.com/valitydev/botkube \
|
||||
-e GORELEASER_CURRENT_TAG=latest \
|
||||
-e GORELEASER_CURRENT_TAG=v9.99.9-dev \
|
||||
goreleaser/goreleaser release --rm-dist --snapshot --skip-publish
|
||||
}
|
||||
|
||||
@ -69,7 +69,7 @@ usage() {
|
||||
Usage: ${0} [build|release|release_snapshot]
|
||||
Where,
|
||||
build: Builds project with goreleaser without pushing images.
|
||||
release_snapshot: Builds project without publishing release. It builds and pushes BotKube image with latest image tag.
|
||||
release_snapshot: Builds project without publishing release. It builds and pushes BotKube image with v9.99.9-dev image tag.
|
||||
release: Makes and published release to GitHub
|
||||
EOM
|
||||
exit 1
|
||||
|
@ -124,6 +124,11 @@ func New(object interface{}, eventType config.EventType, resource, clusterName s
|
||||
event.Count = eventObj.Count
|
||||
event.Action = eventObj.Action
|
||||
event.TimeStamp = eventObj.LastTimestamp.Time
|
||||
// Compatible with events.k8s.io/v1
|
||||
if eventObj.LastTimestamp.IsZero() {
|
||||
event.TimeStamp = eventObj.Series.LastObservedTime.Time
|
||||
event.Count = eventObj.Series.Count
|
||||
}
|
||||
}
|
||||
return event
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user