updat epush

This commit is contained in:
Karim Pirzargar
2026-03-09 20:16:14 +03:30
parent d5a96a7cf7
commit 2ab001bc70
4 changed files with 110 additions and 76 deletions
+48 -28
View File
@@ -1,64 +1,84 @@
################################################################################
# build
# my118/5
################################################################################
kind: pipeline
type: docker
name: (build dev) build form and push to artifactory
name: (dev) build form and push to artifactory
clone:
depth: 1
steps:
- name: build tag
image: alpine/git:2.40.1
- name: build golang app admin and user
image: docker-mirror.ravanertebat.ir/hub/golang:1.24
environment:
GOOS: linux
GOARCH: amd64
CGO_ENABLED: 0
GOPROXY: "https://mirror.ravanertebat.ir/repository/golang-proxy,direct"
GOSUMDB: "sum.golang.org https://mirror.ravanertebat.ir/repository/golang-sum-proxy"
# GOINSECURE: "10.64.16.1"
# GOPRIVATE: "10.64.16.1"
settings:
debug: true
commands:
- APP_VERSION=$(git rev-list HEAD --count --no-merges)-$DRONE_BRANCH
- |
set -e
case "$DRONE_BRANCH" in
main) echo prod;;
uat) echo uat;;
dev) echo dev;;
*) echo dev;;
esac > .environment
- echo "Branch ${DRONE_BRANCH}, Environment $(cat .environment)"
- APP_VERSION=$(cat .environment)-${DRONE_BUILD_NUMBER}
- echo "APP Version tags $APP_VERSION"
- echo -n "$APP_VERSION" >> .tags
- name: build web
image: plugins/docker
settings:
build_args:
- BUILD_APP=web
username: cicd
password:
from_secret: REGISTRY_PASSWORD
dockerfile: ./cmd/web/Dockerfile
repo: artifactory.ravanertebat.ir/tm/web
registry: artifactory.ravanertebat.ir
- echo -n "$APP_VERSION,latest" >> .tags
- mkdir -p ./artifacts/go/bin ./artifacts/go/config
- go env
- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o ./artifacts/go/bin/web ./cmd/web/main.go
- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o ./artifacts/go/bin/scraper ./cmd/scraper/main.go
- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o ./artifacts/go/bin/worker ./cmd/worker/main.go
- ls -ltrh ./artifacts/go/bin/
- name: build scraper
- name: push scraper
image: plugins/docker
settings:
build_args:
- BUILD_APP=scraper
debug: true
username: cicd
password:
from_secret: REGISTRY_PASSWORD
dockerfile: ./cmd/scraper/Dockerfile
repo: artifactory.ravanertebat.ir/tm/scraper
registry: artifactory.ravanertebat.ir
dockerfile: ./cmd/scraper/Dockerfile
- name: build worker
- name: push web
image: plugins/docker
settings:
build_args:
- BUILD_APP=worker
debug: true
username: cicd
password:
from_secret: REGISTRY_PASSWORD
repo: artifactory.ravanertebat.ir/tm/web
registry: artifactory.ravanertebat.ir
dockerfile: ./cmd/web/Dockerfile
- name: push worker
image: plugins/docker
settings:
debug: true
username: cicd
password:
from_secret: REGISTRY_PASSWORD
dockerfile: ./cmd/worker/Dockerfile
repo: artifactory.ravanertebat.ir/tm/worker
registry: artifactory.ravanertebat.ir
dockerfile: ./cmd/worker/Dockerfile
node:
tag: aecde-docker-runner
trigger:
branch:
- main
- develop
- uat
- dev
event:
- promote
- custom
+20 -17
View File
@@ -1,22 +1,25 @@
ARG GO_VERSION=1.23
ARG BASH_VERSION=5.0
FROM golang:${GO_VERSION} AS go-builder
FROM docker-mirror.ravanertebat.ir/base/amd64/bash:$BASH_VERSION
WORKDIR /app
## all below action added to base image @Dockerfile.bash-base
# #ADD ./fastest-mirror.sh /etc/apk/
# #RUN chmod +x /etc/apk/fastest-mirror.sh \
# # && /etc/apk/fastest-mirror.sh
# RUN apk update
# # RUN apk add --upgrade busybox-suid
# RUN apk --no-cache add --update busybox-suid \
# && apk --no-cache add curl rsync tzdata tcpdump tree ca-certificates s-nail \
# && ln -s /usr/bin/mail /usr/bin/s-nail \
# && mkdir -p /go/bin/media \
# && mkdir -p /go/bin/log \
# && mkdir -p /go/bin/config
WORKDIR /go/bin/
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o scraper-build ./cmd/scraper/main.go
FROM bash:${BASH_VERSION}
RUN apk --no-cache add busybox-suid curl rsync tzdata tcpdump tree ca-certificates s-nail \
&& ln -s /usr/bin/mail /usr/bin/s-nail
WORKDIR /app
COPY --from=go-builder /app/scraper-build .
EXPOSE 80
ENTRYPOINT /app/scraper-build
## Copy pre-built artifacts from Drone CI build steps
COPY ./artifacts/go/bin/scraper .
# COPY ./artifacts/go/config/*.json ./config/
EXPOSE 8686
# Set the binary.
ENTRYPOINT ["/go/bin/scraper"]
+22 -16
View File
@@ -1,24 +1,30 @@
ARG GO_VERSION=1.23
ARG BASH_VERSION=5.0
FROM golang:${GO_VERSION} AS go-builder
FROM docker-mirror.ravanertebat.ir/base/amd64/bash:$BASH_VERSION
WORKDIR /app
## all below action added to base image @Dockerfile.bash-base
# #ADD ./fastest-mirror.sh /etc/apk/
# #RUN chmod +x /etc/apk/fastest-mirror.sh \
# # && /etc/apk/fastest-mirror.sh
# RUN apk update
# # RUN apk add --upgrade busybox-suid
# RUN apk --no-cache add --update busybox-suid \
# && apk --no-cache add curl rsync tzdata tcpdump tree ca-certificates s-nail \
# && ln -s /usr/bin/mail /usr/bin/s-nail \
# && mkdir -p /go/bin/media \
# && mkdir -p /go/bin/log \
# && mkdir -p /go/bin/config
WORKDIR /go/bin/
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o web-build ./cmd/web/main.go
## Copy pre-built artifacts from Drone CI build steps
COPY ./artifacts/go/bin/web .
COPY ./cmd/web/assets ./assets
COPY ./app/cmd/web/docs ./docs
# COPY ./artifacts/go/config/*.json ./config/
EXPOSE 8686
# Set the binary.
ENTRYPOINT ["/go/bin/web"]
FROM bash:${BASH_VERSION}
RUN apk --no-cache add busybox-suid curl rsync tzdata tcpdump tree ca-certificates s-nail \
&& ln -s /usr/bin/mail /usr/bin/s-nail
WORKDIR /app
COPY --from=go-builder /app/web-build .
COPY --from=go-builder /app/cmd/web/assets ./assets
COPY --from=go-builder /app/cmd/web/docs ./docs
EXPOSE 80
ENTRYPOINT /app/web-build
+19 -14
View File
@@ -1,22 +1,27 @@
ARG GO_VERSION=1.23
ARG BASH_VERSION=5.0
FROM golang:${GO_VERSION} AS go-builder
FROM docker-mirror.ravanertebat.ir/base/amd64/bash:$BASH_VERSION
WORKDIR /app
## all below action added to base image @Dockerfile.bash-base
# #ADD ./fastest-mirror.sh /etc/apk/
# #RUN chmod +x /etc/apk/fastest-mirror.sh \
# # && /etc/apk/fastest-mirror.sh
# RUN apk update
# # RUN apk add --upgrade busybox-suid
# RUN apk --no-cache add --update busybox-suid \
# && apk --no-cache add curl rsync tzdata tcpdump tree ca-certificates s-nail \
# && ln -s /usr/bin/mail /usr/bin/s-nail \
# && mkdir -p /go/bin/media \
# && mkdir -p /go/bin/log \
# && mkdir -p /go/bin/config
WORKDIR /go/bin/
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -v -o worker-build ./cmd/worker/main.go
## Copy pre-built artifacts from Drone CI build steps
COPY ./artifacts/go/bin/worker .
EXPOSE 8686
# Set the binary.
ENTRYPOINT ["/go/bin/worker"]
FROM bash:${BASH_VERSION}
RUN apk --no-cache add busybox-suid curl rsync tzdata tcpdump tree ca-certificates s-nail \
&& ln -s /usr/bin/mail /usr/bin/s-nail
WORKDIR /app
COPY --from=go-builder /app/worker-build .
EXPOSE 80
ENTRYPOINT /app/worker-build