mirror of
https://github.com/EpicMorg/docker-scripts.git
synced 2025-04-29 16:39:26 +03:00
perforce
This commit is contained in:
parent
7917bf1ab2
commit
0e12aced90
@ -20,7 +20,7 @@ jobs:
|
||||
'r21.1', 'r21.2',
|
||||
'r22.1',
|
||||
'r23.1', 'r23.2',
|
||||
'r24.2'
|
||||
'r24.1', 'r24.2',
|
||||
]
|
||||
|
||||
steps:
|
||||
|
@ -7,7 +7,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
RUN echo "Default folder for installation of customized soft is: ${EMG_LOCAL_BASE_DIR}"
|
||||
|
||||
ARG P4_VERSION=r23.2
|
||||
ARG P4_VERSION=r24.2
|
||||
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
|
||||
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
|
||||
|
||||
|
@ -7,7 +7,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
RUN echo "Default folder for installation of customized soft is: ${EMG_LOCAL_BASE_DIR}"
|
||||
|
||||
ARG P4_VERSION=r23.2
|
||||
ARG P4_VERSION=r24.2
|
||||
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
|
||||
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
|
||||
|
||||
|
@ -7,7 +7,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
RUN echo "Default folder for installation of customized soft is: ${EMG_LOCAL_BASE_DIR}"
|
||||
|
||||
ARG P4_VERSION=r23.2
|
||||
ARG P4_VERSION=r24.2
|
||||
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
|
||||
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
|
||||
|
||||
|
@ -7,7 +7,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
RUN echo "Default folder for installation of customized soft is: ${EMG_LOCAL_BASE_DIR}"
|
||||
|
||||
ARG P4_VERSION=r23.2
|
||||
ARG P4_VERSION=r24.2
|
||||
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
|
||||
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
|
||||
|
||||
|
@ -7,7 +7,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
RUN echo "Default folder for installation of customized soft is: ${EMG_LOCAL_BASE_DIR}"
|
||||
|
||||
ARG P4_VERSION=r23.2
|
||||
ARG P4_VERSION=r24.2
|
||||
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
|
||||
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
|
||||
|
||||
|
94
linux/ecosystem/perforce/base/r24.1/Dockerfile
Normal file
94
linux/ecosystem/perforce/base/r24.1/Dockerfile
Normal file
@ -0,0 +1,94 @@
|
||||
FROM quay.io/epicmorg/debian:bookworm
|
||||
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
##################################################################
|
||||
# perforce default envs
|
||||
##################################################################
|
||||
ENV P4_VERSION=r24.1
|
||||
ENV P4_CDN_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64
|
||||
ENV P4_DOWNLOAD_URL=${P4_CDN_URL}/p4
|
||||
ENV P4BROKER_DOWNLOAD_URL=${P4_CDN_URL}/p4broker
|
||||
ENV P4D_DOWNLOAD_URL=${P4_CDN_URL}/p4d
|
||||
ENV P4DCTL_DOWNLOAD_URL=${P4_CDN_URL}/p4dctl
|
||||
ENV P4MIGRATE_DOWNLOAD_URL=${P4_CDN_URL}/p4migrate
|
||||
ENV P4MONPE_DOWNLOAD_URL=${P4_CDN_URL}/p4mon-prometheus-exporter
|
||||
ENV P4P_DOWNLOAD_URL=${P4_CDN_URL}/p4p
|
||||
ENV PERFMERGE_DOWNLOAD_URL=${P4_CDN_URL}/perfmerge
|
||||
ENV PERFSPLIT_DOWNLOAD_URL=${P4_CDN_URL}/perfsplit
|
||||
|
||||
ENV P4DEBUG=
|
||||
ENV P4PROOT=
|
||||
ENV P4PCACHE=/perforce/cache
|
||||
ENV P4LOG=/perforce/logs/p4p.log
|
||||
ENV P4TARGET=
|
||||
ENV P4PORT=1666
|
||||
ENV P4ARGS=
|
||||
|
||||
ENV P4_BIN=/usr/bin/p4
|
||||
ENV P4BROKER_BIN=/usr/bin/p4broker
|
||||
ENV P4D_BIN=/usr/bin/p4d
|
||||
ENV P4DCTL_BIN=/usr/bin/p4dctl
|
||||
ENV P4MIGRATE_BIN=/usr/bin/p4migrate
|
||||
ENV P4MONPE_BIN=/usr/bin/p4mon-prometheus-exporter
|
||||
ENV P4P_BIN=/usr/bin/p4p
|
||||
ENV PERFMERGE_BIN=/usr/bin/perfmerge
|
||||
ENV PERFSPLIT_BIN=/usr/bin/perfsplit
|
||||
|
||||
##################################################################
|
||||
# Install perforce binaries
|
||||
##################################################################
|
||||
RUN rm -rfv \
|
||||
${P4_BIN} \
|
||||
${P4BROKER_BIN} \
|
||||
${P4D_BIN} \
|
||||
${P4DCTL_BIN} \
|
||||
${P4MIGRATE_BIN} \
|
||||
${P4MONPE_BIN} \
|
||||
${P4P_BIN} \
|
||||
${PERFMERGE_BIN} \
|
||||
${PERFSPLIT_BIN}
|
||||
|
||||
RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue -P /usr/bin \
|
||||
${P4_DOWNLOAD_URL} \
|
||||
${P4BROKER_DOWNLOAD_URL} \
|
||||
${P4D_DOWNLOAD_URL} \
|
||||
${P4DCTL_DOWNLOAD_URL} \
|
||||
${P4MIGRATE_DOWNLOAD_URL} \
|
||||
${P4MONPE_DOWNLOAD_URL} \
|
||||
${P4P_DOWNLOAD_URL} \
|
||||
${PERFMERGE_DOWNLOAD_URL} \
|
||||
${PERFSPLIT_DOWNLOAD_URL}
|
||||
|
||||
RUN chmod +x \
|
||||
${P4_BIN} \
|
||||
${P4BROKER_BIN} \
|
||||
${P4D_BIN} \
|
||||
${P4DCTL_BIN} \
|
||||
${P4MIGRATE_BIN} \
|
||||
${P4MONPE_BIN} \
|
||||
${P4P_BIN} \
|
||||
${PERFMERGE_BIN} \
|
||||
${PERFSPLIT_BIN}
|
||||
|
||||
# RUN echo "##################################################################" && \
|
||||
# ${P4_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4BROKER_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4D_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4DCTL_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4MIGRATE_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4MONPE_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${P4P_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${PERFMERGE_BIN} -V && \
|
||||
# echo "##################################################################" && \
|
||||
# ${PERFSPLIT_BIN} -V && \
|
||||
# echo "##################################################################"
|
||||
|
||||
WORKDIR /perforce
|
44
linux/ecosystem/perforce/base/r24.1/Makefile
Normal file
44
linux/ecosystem/perforce/base/r24.1/Makefile
Normal file
@ -0,0 +1,44 @@
|
||||
all: app
|
||||
|
||||
app:
|
||||
make pip
|
||||
make build
|
||||
make deploy
|
||||
make clean
|
||||
|
||||
build:
|
||||
make build-buildah
|
||||
|
||||
deploy:
|
||||
make deploy-buildah
|
||||
|
||||
build-buildah:
|
||||
buildah-wrapper --build
|
||||
|
||||
deploy-buildah:
|
||||
buildah-wrapper --deploy
|
||||
|
||||
build-kaniko:
|
||||
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run
|
||||
|
||||
deploy-kaniko:
|
||||
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug
|
||||
|
||||
build-compose:
|
||||
docker-compose build --compress --parallel --progress plain
|
||||
|
||||
deploy-compose:
|
||||
docker-compose push
|
||||
|
||||
clean:
|
||||
docker container prune -f
|
||||
docker image prune -f
|
||||
docker network prune -f
|
||||
docker volume prune -f
|
||||
docker system prune -af
|
||||
buildah rm -a
|
||||
buildah rmi -a
|
||||
|
||||
pip:
|
||||
pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
|
||||
pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
|
5
linux/ecosystem/perforce/base/r24.1/docker-compose.yml
Normal file
5
linux/ecosystem/perforce/base/r24.1/docker-compose.yml
Normal file
@ -0,0 +1,5 @@
|
||||
services:
|
||||
app:
|
||||
image: "quay.io/epicmorg/perforce:r24.1"
|
||||
build:
|
||||
context: .
|
@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive
|
||||
##################################################################
|
||||
# perforce default envs
|
||||
##################################################################
|
||||
ENV P4_VERSION=r23.1
|
||||
ENV P4_VERSION=r24.2
|
||||
ENV P4_CDN_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64
|
||||
ENV P4_DOWNLOAD_URL=${P4_CDN_URL}/p4
|
||||
ENV P4BROKER_DOWNLOAD_URL=${P4_CDN_URL}/p4broker
|
||||
@ -29,11 +29,11 @@ ENV P4_BIN=/usr/bin/p4
|
||||
ENV P4BROKER_BIN=/usr/bin/p4broker
|
||||
ENV P4D_BIN=/usr/bin/p4d
|
||||
ENV P4DCTL_BIN=/usr/bin/p4dctl
|
||||
#ENV P4MIGRATE_BIN=/usr/bin/p4migrate
|
||||
ENV P4MIGRATE_BIN=/usr/bin/p4migrate
|
||||
ENV P4MONPE_BIN=/usr/bin/p4mon-prometheus-exporter
|
||||
ENV P4P_BIN=/usr/bin/p4p
|
||||
#ENV PERFMERGE_BIN=/usr/bin/perfmerge
|
||||
#ENV PERFSPLIT_BIN=/usr/bin/perfsplit
|
||||
ENV PERFMERGE_BIN=/usr/bin/perfmerge
|
||||
ENV PERFSPLIT_BIN=/usr/bin/perfsplit
|
||||
|
||||
##################################################################
|
||||
# Install perforce binaries
|
||||
@ -43,7 +43,7 @@ RUN rm -rfv \
|
||||
${P4BROKER_BIN} \
|
||||
${P4D_BIN} \
|
||||
${P4DCTL_BIN} \
|
||||
# ${P4MIGRATE_BIN} \
|
||||
${P4MIGRATE_BIN} \
|
||||
${P4MONPE_BIN} \
|
||||
${P4P_BIN} \
|
||||
${PERFMERGE_BIN} \
|
||||
@ -54,22 +54,22 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
|
||||
${P4BROKER_DOWNLOAD_URL} \
|
||||
${P4D_DOWNLOAD_URL} \
|
||||
${P4DCTL_DOWNLOAD_URL} \
|
||||
# ${P4MIGRATE_DOWNLOAD_URL} \
|
||||
${P4MIGRATE_DOWNLOAD_URL} \
|
||||
${P4MONPE_DOWNLOAD_URL} \
|
||||
${P4P_DOWNLOAD_URL}
|
||||
# ${PERFMERGE_DOWNLOAD_URL} \
|
||||
# ${PERFSPLIT_DOWNLOAD_URL}
|
||||
${P4P_DOWNLOAD_URL} \
|
||||
${PERFMERGE_DOWNLOAD_URL} \
|
||||
${PERFSPLIT_DOWNLOAD_URL}
|
||||
|
||||
RUN chmod +x \
|
||||
${P4_BIN} \
|
||||
${P4BROKER_BIN} \
|
||||
${P4D_BIN} \
|
||||
${P4DCTL_BIN} \
|
||||
# ${P4MIGRATE_BIN} \
|
||||
${P4MIGRATE_BIN} \
|
||||
${P4MONPE_BIN} \
|
||||
${P4P_BIN}
|
||||
# ${PERFMERGE_BIN} \
|
||||
# ${PERFSPLIT_BIN}
|
||||
${P4P_BIN} \
|
||||
${PERFMERGE_BIN} \
|
||||
${PERFSPLIT_BIN}
|
||||
|
||||
# RUN echo "##################################################################" && \
|
||||
# ${P4_BIN} -V && \
|
||||
|
12
linux/ecosystem/perforce/p4p/r24.1/Dockerfile
Normal file
12
linux/ecosystem/perforce/p4p/r24.1/Dockerfile
Normal file
@ -0,0 +1,12 @@
|
||||
FROM quay.io/epicmorg/perforce:r24.1
|
||||
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
VOLUME /perforce/cache
|
||||
VOLUME /perforce/logs
|
||||
WORKDIR /perforce
|
||||
|
||||
EXPOSE 1666
|
||||
|
||||
ENTRYPOINT ["tini", "-s", "--", "docker-entrypoint.sh"]
|
||||
CMD ["docker-entrypoint.sh"]
|
44
linux/ecosystem/perforce/p4p/r24.1/Makefile
Normal file
44
linux/ecosystem/perforce/p4p/r24.1/Makefile
Normal file
@ -0,0 +1,44 @@
|
||||
all: app
|
||||
|
||||
app:
|
||||
make pip
|
||||
make build
|
||||
make deploy
|
||||
make clean
|
||||
|
||||
build:
|
||||
make build-buildah
|
||||
|
||||
deploy:
|
||||
make deploy-buildah
|
||||
|
||||
build-buildah:
|
||||
buildah-wrapper --build
|
||||
|
||||
deploy-buildah:
|
||||
buildah-wrapper --deploy
|
||||
|
||||
build-kaniko:
|
||||
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run
|
||||
|
||||
deploy-kaniko:
|
||||
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug
|
||||
|
||||
build-compose:
|
||||
docker-compose build --compress --parallel --progress plain
|
||||
|
||||
deploy-compose:
|
||||
docker-compose push
|
||||
|
||||
clean:
|
||||
docker container prune -f
|
||||
docker image prune -f
|
||||
docker network prune -f
|
||||
docker volume prune -f
|
||||
docker system prune -af
|
||||
buildah rm -a
|
||||
buildah rmi -a
|
||||
|
||||
pip:
|
||||
pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
|
||||
pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper
|
5
linux/ecosystem/perforce/p4p/r24.1/docker-compose.yml
Normal file
5
linux/ecosystem/perforce/p4p/r24.1/docker-compose.yml
Normal file
@ -0,0 +1,5 @@
|
||||
services:
|
||||
app:
|
||||
image: "quay.io/epicmorg/p4p:r24.1"
|
||||
build:
|
||||
context: .
|
20
linux/ecosystem/perforce/p4p/r24.1/docker-entrypoint.sh
Normal file
20
linux/ecosystem/perforce/p4p/r24.1/docker-entrypoint.sh
Normal file
@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
|
||||
: ${P4ARGS:=}
|
||||
: ${P4DEBUG:=}
|
||||
: ${P4PROOT:=}
|
||||
: ${P4PCACHE:=/perforce/cache}
|
||||
: ${P4LOG:=/perforce/logs/p4p.log}
|
||||
: ${P4TARGET:=}
|
||||
: ${P4PORT:=1666}
|
||||
|
||||
if [[ -z "${P4TARGET}" ]]; then
|
||||
echo "[p4p] FATAL: env P4TARGET is not set. Please, set it and try again. Shutting down."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "======================================================"
|
||||
echo "[p4p] Starting up..."
|
||||
echo "======================================================"
|
||||
|
||||
p4p -p ${P4PORT} -r ${P4CACHE} -t ${P4TARGET} -L ${P4LOG} ${P4ARGS}
|
Loading…
x
Reference in New Issue
Block a user