Compare commits
No commits in common. "deploy_custom" and "main" have entirely different histories.
deploy_cus
...
main
@ -1,110 +0,0 @@
|
|||||||
name: Deploy Gitea Custom
|
|
||||||
run-name: ${{ gitea.actor }} deploying Gitea
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- deploy_custom
|
|
||||||
|
|
||||||
env:
|
|
||||||
CONTAINER_NAME: gitea-production
|
|
||||||
VOLUME_NAME: gitea_data
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-deploy:
|
|
||||||
runs-on: edge_pena_monitoring1
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Check out repository code
|
|
||||||
uses: http://gitea.pena:3000/PenaDevops/actions.git/checkout@v1
|
|
||||||
|
|
||||||
- name: Build container image
|
|
||||||
run: |
|
|
||||||
podman build \
|
|
||||||
--build-arg GITEA_VERSION=${{ github.ref_name }} \
|
|
||||||
-t gitea-custom:${{ github.ref_name }} .
|
|
||||||
|
|
||||||
- name: Remove old container
|
|
||||||
run: |
|
|
||||||
podman stop ${{ env.CONTAINER_NAME }} || true
|
|
||||||
podman rm ${{ env.CONTAINER_NAME }} || true
|
|
||||||
podman image prune -f
|
|
||||||
|
|
||||||
- name: Run new container with data persistence
|
|
||||||
run: |
|
|
||||||
# todo надо добавить по надобности другие переменные для гити
|
|
||||||
podman run -d --name ${{ env.CONTAINER_NAME }} \
|
|
||||||
-e GITEA__database__DB_TYPE=postgres \
|
|
||||||
-e GITEA__database__HOST=${{ secrets.GITEA_DB_HOST }} \
|
|
||||||
-e GITEA__database__NAME=${{ secrets.GITEA_DB_NAME }} \
|
|
||||||
-e GITEA__database__USER=${{ secrets.GITEA_DB_USER }} \
|
|
||||||
-e GITEA__database__PASSWD=${{ secrets.GITEA_DB_PASS }} \
|
|
||||||
-e USER_UID=1000 \
|
|
||||||
-e USER_GID=1000 \
|
|
||||||
-v ${{ env.VOLUME_NAME }}:/data \
|
|
||||||
-p 3001:3000 \
|
|
||||||
-p 2223:22 \
|
|
||||||
--restart unless-stopped \
|
|
||||||
localhost/gitea-custom:${{ github.ref_name }}
|
|
||||||
|
|
||||||
#jobs:
|
|
||||||
# build-and-deploy:
|
|
||||||
# runs-on: ubuntu-latest
|
|
||||||
#
|
|
||||||
# steps:
|
|
||||||
# - name: Checkout code
|
|
||||||
# uses: actions/checkout@v4
|
|
||||||
#
|
|
||||||
# - name: Set up Docker Buildx
|
|
||||||
# uses: docker/setup-buildx-action@v3
|
|
||||||
#
|
|
||||||
# - name: Build Docker image
|
|
||||||
# run: |
|
|
||||||
# docker build \
|
|
||||||
# --build-arg GITEA_VERSION=${{ env.GITEA_VERSION }} \
|
|
||||||
# -t gitea-custom:${{ github.sha }} \
|
|
||||||
# -t gitea-custom:latest .
|
|
||||||
#
|
|
||||||
# - name: Stop existing container
|
|
||||||
# run: |
|
|
||||||
# docker stop ${{ env.CONTAINER_NAME }} || true
|
|
||||||
#
|
|
||||||
# - name: Backup current container (optional)
|
|
||||||
# run: |
|
|
||||||
# docker commit ${{ env.CONTAINER_NAME }} gitea-backup:$(date +%Y%m%d_%H%M%S) || true
|
|
||||||
#
|
|
||||||
# - name: Remove old container
|
|
||||||
# run: |
|
|
||||||
# docker rm ${{ env.CONTAINER_NAME }} || true
|
|
||||||
#
|
|
||||||
# - name: Run new container with data persistence
|
|
||||||
# env:
|
|
||||||
# DB_HOST: ${{ secrets.GITEA_DB_HOST }}
|
|
||||||
# DB_USER: ${{ secrets.GITEA_DB_USER }}
|
|
||||||
# DB_PASS: ${{ secrets.GITEA_DB_PASS }}
|
|
||||||
# DB_NAME: ${{ secrets.GITEA_DB_NAME }}
|
|
||||||
# run: |
|
|
||||||
# # todo надо добавить по надобности другие переменные для гити
|
|
||||||
# docker run -d --name ${{ env.CONTAINER_NAME }} \
|
|
||||||
# -e GITEA__database__DB_TYPE=postgres \
|
|
||||||
# -e GITEA__database__HOST=${{ secrets.GITEA_DB_HOST }} \
|
|
||||||
# -e GITEA__database__NAME=${{ secrets.GITEA_DB_NAME }} \
|
|
||||||
# -e GITEA__database__USER=${{ secrets.GITEA_DB_USER }} \
|
|
||||||
# -e GITEA__database__PASSWD=${{ secrets.GITEA_DB_PASS }} \
|
|
||||||
# -e USER_UID=1000 \
|
|
||||||
# -e USER_GID=1000 \
|
|
||||||
# -v ${{ env.VOLUME_NAME }}:/data \
|
|
||||||
# -p 3000:3000 \
|
|
||||||
# -p 2222:22 \
|
|
||||||
# --restart unless-stopped \
|
|
||||||
# gitea-custom:latest
|
|
||||||
#
|
|
||||||
# - name: Wait for Gitea to start
|
|
||||||
# run: |
|
|
||||||
# sleep 30
|
|
||||||
#
|
|
||||||
# - name: Verify container is running
|
|
||||||
# run: |
|
|
||||||
# docker ps -a
|
|
||||||
# docker logs ${{ env.CONTAINER_NAME }} --tail 20
|
|
||||||
# docker inspect ${{ env.CONTAINER_NAME }} --format='{{.State.Status}}'
|
|
||||||
34
Dockerfile
34
Dockerfile
@ -1,45 +1,39 @@
|
|||||||
|
# Build stage
|
||||||
FROM docker.io/library/golang:1.23-alpine3.20 AS build-env
|
FROM docker.io/library/golang:1.23-alpine3.20 AS build-env
|
||||||
|
|
||||||
ARG GOPROXY=https://proxy.golang.org,direct
|
ARG GOPROXY
|
||||||
ENV GOPROXY=${GOPROXY}
|
ENV GOPROXY=${GOPROXY:-direct}
|
||||||
ENV GOPRIVATE=
|
|
||||||
ENV GONOSUMDB=*
|
|
||||||
|
|
||||||
ARG GITEA_VERSION=deploy_custom
|
ARG GITEA_VERSION
|
||||||
ARG TAGS="sqlite sqlite_unlock_notify"
|
ARG TAGS="sqlite sqlite_unlock_notify"
|
||||||
ENV TAGS="bindata timetzdata $TAGS"
|
ENV TAGS="bindata timetzdata $TAGS"
|
||||||
ARG CGO_EXTRA_CFLAGS
|
ARG CGO_EXTRA_CFLAGS
|
||||||
|
|
||||||
|
# Build deps
|
||||||
RUN apk --no-cache add \
|
RUN apk --no-cache add \
|
||||||
build-base \
|
build-base \
|
||||||
git \
|
git \
|
||||||
nodejs \
|
nodejs \
|
||||||
npm \
|
npm \
|
||||||
ca-certificates \
|
&& rm -rf /var/cache/apk/*
|
||||||
&& rm -rf /var/cache/apk/* \
|
|
||||||
&& update-ca-certificates
|
|
||||||
|
|
||||||
RUN git config --global http.postBuffer 1048576000 \
|
RUN npm --version
|
||||||
&& git config --global http.lowSpeedLimit 0 \
|
|
||||||
&& git config --global http.lowSpeedTime 999999
|
|
||||||
|
|
||||||
COPY go.mod go.sum ./
|
|
||||||
RUN go mod download
|
|
||||||
|
|
||||||
|
# Setup repo
|
||||||
COPY . ${GOPATH}/src/code.gitea.io/gitea
|
COPY . ${GOPATH}/src/code.gitea.io/gitea
|
||||||
WORKDIR ${GOPATH}/src/code.gitea.io/gitea
|
WORKDIR ${GOPATH}/src/code.gitea.io/gitea
|
||||||
|
|
||||||
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi
|
# Checkout version if set
|
||||||
|
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi \
|
||||||
RUN for i in {1..3}; do \
|
&& make clean-all build
|
||||||
make clean-all build && break || \
|
|
||||||
(echo "Attempt $i failed, retrying in 5 seconds..." && sleep 5); \
|
|
||||||
done
|
|
||||||
|
|
||||||
|
# Begin env-to-ini build
|
||||||
RUN go build contrib/environment-to-ini/environment-to-ini.go
|
RUN go build contrib/environment-to-ini/environment-to-ini.go
|
||||||
|
|
||||||
|
# Copy local files
|
||||||
COPY docker/root /tmp/local
|
COPY docker/root /tmp/local
|
||||||
|
|
||||||
|
# Set permissions
|
||||||
RUN chmod 755 /tmp/local/usr/bin/entrypoint \
|
RUN chmod 755 /tmp/local/usr/bin/entrypoint \
|
||||||
/tmp/local/usr/local/bin/gitea \
|
/tmp/local/usr/local/bin/gitea \
|
||||||
/tmp/local/etc/s6/gitea/* \
|
/tmp/local/etc/s6/gitea/* \
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user