[CI Workflow] Improvments for next releses and logic #11
7 changed files with 71 additions and 79 deletions
|
@ -1,15 +1,21 @@
|
||||||
steps:
|
steps:
|
||||||
- name: build-binary
|
- name: build-binary/linux-amd64
|
||||||
image: golang:1.24.2
|
image: golang:1.24.2
|
||||||
|
environment:
|
||||||
|
I_PACKAGE: "git.hackmi.ch/Phil/goshorly/utils"
|
||||||
|
CGO_ENABLED: 0
|
||||||
commands:
|
commands:
|
||||||
- export CI_COMMIT_SHORT_SHA=${CI_COMMIT_SHA:0:10}
|
- export CI_COMMIT_SHA=${CI_COMMIT_SHA}
|
||||||
- go build -ldflags="-X main.CommitSHA=${CI_COMMIT_SHORT_SHA}" -o linux-amd64 .
|
- go build -a -installsuffix cgo -ldflags=" -X $I_PACKAGE.CI_COMMIT_SHA=$CI_COMMIT_SHA -X $I_PACKAGE.CI_COMMIT_BRANCH=$CI_COMMIT_BRANCH -X $I_PACKAGE.CI_COMMIT_TAG=$CI_COMMIT_TAG" -o app .
|
||||||
when:
|
when:
|
||||||
- event: [push, cron]
|
- event: [push, cron]
|
||||||
branch: main
|
branch: main
|
||||||
|
|
||||||
- name: build-and-push-docker-dev
|
- name: build-and-push-docker-dev
|
||||||
image: woodpeckerci/plugin-docker-buildx:5.2.2
|
image: woodpeckerci/plugin-docker-buildx:5.2.2
|
||||||
|
environment:
|
||||||
|
I_PACKAGE: "git.hackmi.ch/Phil/goshorly/utils"
|
||||||
|
CGO_ENABLED: 0
|
||||||
settings:
|
settings:
|
||||||
platforms: linux/amd64,linux/arm/v6,linux/arm64/v8
|
platforms: linux/amd64,linux/arm/v6,linux/arm64/v8
|
||||||
repo: git.hackmi.ch/phil/goshorly
|
repo: git.hackmi.ch/phil/goshorly
|
||||||
|
@ -19,11 +25,8 @@ steps:
|
||||||
from_secret: reg-user
|
from_secret: reg-user
|
||||||
password:
|
password:
|
||||||
from_secret: reg-pass
|
from_secret: reg-pass
|
||||||
build_args:
|
|
||||||
- CI_COMMIT_BRANCH=${CI_COMMIT_BRANCH}
|
|
||||||
- CI_COMMIT_SHORT_SHA=${CI_COMMIT_SHA:0:10}
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- build-binary
|
- build-binary/linux-amd64
|
||||||
when:
|
when:
|
||||||
- event: [push, cron]
|
- event: [push, cron]
|
||||||
branch: main
|
branch: main
|
||||||
|
|
15
Dockerfile
15
Dockerfile
|
@ -1,24 +1,13 @@
|
||||||
FROM golang:alpine as builder
|
FROM golang:1.24.2-alpine as builder
|
||||||
|
|
||||||
RUN apk add --no-cache git make build-base
|
RUN apk add --no-cache git make build-base
|
||||||
|
|
||||||
ARG CI_COMMIT_BRANCH
|
|
||||||
ARG CI_COMMIT_SHORT_SHA
|
|
||||||
ARG CI_COMMIT_TAG
|
|
||||||
|
|
||||||
ENV CI_COMMIT_BRANCH=$CI_COMMIT_BRANCH
|
|
||||||
ENV CI_COMMIT_SHORT_SHA=$CI_COMMIT_SHORT_SHA
|
|
||||||
ENV CI_COMMIT_TAG=$CI_COMMIT_TAG
|
|
||||||
|
|
||||||
ENV I_PACKAGE="git.hackmi.ch/Phil/goshorly/utils"
|
|
||||||
ENV CGO_ENABLED=0
|
|
||||||
|
|
||||||
WORKDIR /go/src/git.hackmi.ch/goshorly
|
WORKDIR /go/src/git.hackmi.ch/goshorly
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
RUN go get -d -v ./...
|
RUN go get -d -v ./...
|
||||||
|
|
||||||
RUN go build -a -installsuffix cgo -ldflags=" -X $I_PACKAGE.CI_COMMIT_SHORT_SHA=$CI_COMMIT_SHORT_SHA -X $I_PACKAGE.CI_COMMIT_BRANCH=$CI_COMMIT_BRANCH -X $I_PACKAGE.CI_COMMIT_TAG=$CI_COMMIT_TAG" -o app .
|
RUN go build -a -installsuffix cgo -ldflags=" -X $I_PACKAGE.CI_COMMIT_SHA=$CI_COMMIT_SHA -X $I_PACKAGE.CI_COMMIT_BRANCH=$CI_COMMIT_BRANCH -X $I_PACKAGE.CI_COMMIT_TAG=$CI_COMMIT_TAG" -o app .
|
||||||
|
|
||||||
FROM scratch as production
|
FROM scratch as production
|
||||||
WORKDIR /
|
WORKDIR /
|
||||||
|
|
|
@ -8,7 +8,7 @@ import (
|
||||||
|
|
||||||
func Gethome(c *fiber.Ctx) error {
|
func Gethome(c *fiber.Ctx) error {
|
||||||
return c.Render("views/home", fiber.Map{
|
return c.Render("views/home", fiber.Map{
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
|
|
@ -29,7 +29,7 @@ func Posthome(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.Status(500).Render("views/home", fiber.Map{
|
return c.Status(500).Render("views/home", fiber.Map{
|
||||||
"ERR": "Parsing Error",
|
"ERR": "Parsing Error",
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
@ -50,7 +50,7 @@ func Posthome(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.Status(424).Render("views/home", fiber.Map{
|
return c.Status(424).Render("views/home", fiber.Map{
|
||||||
"ERR": "Invalid URL, please check and try again.",
|
"ERR": "Invalid URL, please check and try again.",
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
@ -73,7 +73,7 @@ func Posthome(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.Status(500).Render("views/home", fiber.Map{
|
return c.Status(500).Render("views/home", fiber.Map{
|
||||||
"ERR": err.Error(),
|
"ERR": err.Error(),
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
@ -95,7 +95,7 @@ func Posthome(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.Status(500).Render("views/home", fiber.Map{
|
return c.Status(500).Render("views/home", fiber.Map{
|
||||||
"ERR": err.Error(),
|
"ERR": err.Error(),
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
@ -123,7 +123,7 @@ func Posthome(c *fiber.Ctx) error {
|
||||||
|
|
||||||
return c.Status(201).Render("views/home", fiber.Map{
|
return c.Status(201).Render("views/home", fiber.Map{
|
||||||
"URL": fURL,
|
"URL": fURL,
|
||||||
"CI_COMMIT_SHORT_SHA": utils.CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": utils.CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": utils.CI_COMMIT_BRANCH,
|
||||||
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
"CI_COMMIT_TAG": utils.CI_COMMIT_TAG,
|
||||||
"CI_TAGGED": utils.CI_TAGGED,
|
"CI_TAGGED": utils.CI_TAGGED,
|
||||||
|
|
|
@ -6,7 +6,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
CI_COMMIT_SHORT_SHA string
|
CI_COMMIT_SHA string
|
||||||
CI_COMMIT_BRANCH string
|
CI_COMMIT_BRANCH string
|
||||||
CI_COMMIT_TAG string
|
CI_COMMIT_TAG string
|
||||||
CI_TAGGED bool
|
CI_TAGGED bool
|
||||||
|
@ -14,7 +14,7 @@ var (
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init_build_vars() {
|
func Init_build_vars() {
|
||||||
CI_BUILD = CI_COMMIT_SHORT_SHA != "" || CI_COMMIT_BRANCH != ""
|
CI_BUILD = CI_COMMIT_SHA != "" || CI_COMMIT_BRANCH != ""
|
||||||
CI_TAGGED = CI_COMMIT_TAG != ""
|
CI_TAGGED = CI_COMMIT_TAG != ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ func Print_Starting_Screen() {
|
||||||
if CI_TAGGED {
|
if CI_TAGGED {
|
||||||
version = CI_COMMIT_TAG
|
version = CI_COMMIT_TAG
|
||||||
} else if CI_BUILD {
|
} else if CI_BUILD {
|
||||||
version = CI_COMMIT_SHORT_SHA
|
version = CI_COMMIT_SHA
|
||||||
}
|
}
|
||||||
fmt.Println("---- Starting goshorly " + version + " ----")
|
fmt.Println("---- Starting goshorly " + version + " ----")
|
||||||
time.Sleep(1 * time.Second)
|
time.Sleep(1 * time.Second)
|
||||||
|
|
|
@ -19,7 +19,7 @@ var ConfigLimiter limiter.Config = limiter.Config{
|
||||||
}
|
}
|
||||||
return c.Render("views/home", fiber.Map{
|
return c.Render("views/home", fiber.Map{
|
||||||
"ERR": "You have reached the limit of requests! Please check back later. (1 minute)",
|
"ERR": "You have reached the limit of requests! Please check back later. (1 minute)",
|
||||||
"CI_COMMIT_SHORT_SHA": CI_COMMIT_SHORT_SHA,
|
"CI_COMMIT_SHA": CI_COMMIT_SHA,
|
||||||
"CI_COMMIT_BRANCH": CI_COMMIT_BRANCH,
|
"CI_COMMIT_BRANCH": CI_COMMIT_BRANCH,
|
||||||
"CI_BUILD": CI_BUILD,
|
"CI_BUILD": CI_BUILD,
|
||||||
})
|
})
|
||||||
|
|
|
@ -82,7 +82,7 @@
|
||||||
{{ if .CI_COMMIT_TAG }}
|
{{ if .CI_COMMIT_TAG }}
|
||||||
| {{ .CI_COMMIT_TAG }}
|
| {{ .CI_COMMIT_TAG }}
|
||||||
{{ else }}
|
{{ else }}
|
||||||
| {{ .CI_COMMIT_SHORT_SHA }}/{{ .CI_COMMIT_BRANCH }}
|
| {{ .CI_COMMIT_SHA }}/{{ .CI_COMMIT_BRANCH }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</center>
|
</center>
|
||||||
|
|
Loading…
Add table
Reference in a new issue