Compare commits
42 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7ae17012da | |||
| 73bd9a4581 | |||
| 9d9529db67 | |||
| 1ae6ea877d | |||
| f642a4ad2d | |||
| d733b7cdb5 | |||
| 3865cedb49 | |||
| 13c0f3c598 | |||
| aa95a2bf14 | |||
| ee6c5f360a | |||
| c665ad8d28 | |||
| 64899eb244 | |||
| d91e9f90de | |||
| 99250bfbdb | |||
| 41aae2641a | |||
| cf6cf7b776 | |||
| 942051f799 | |||
| 9366bb40a0 | |||
| d575115b0e | |||
| fc3415be5b | |||
| 5c40392fc4 | |||
| b9cb003834 | |||
| 6df9527db8 | |||
| cc85f4c476 | |||
| 9d11f308c4 | |||
| 3b544fc61f | |||
| 8a26981a06 | |||
| df42190f94 | |||
| 35cbac9328 | |||
| 3245bac439 | |||
| a2fc48b06b | |||
| 57991727fa | |||
| 4cbb470ff5 | |||
| 9bac7be2b6 | |||
| 33995326a8 | |||
| 9e3c20e751 | |||
| d7cdb6be9d | |||
| df18b23f88 | |||
| da6f636c5f | |||
| 07596178fc | |||
| f9c335b5a7 | |||
| 9b6976d758 |
@@ -1,65 +0,0 @@
|
||||
name: ci/cd to build and push docker image in private registry
|
||||
|
||||
#https://docs.docker.com/build/ci/github-actions/push-multi-registries/
|
||||
#https://www.devsync.se/ci/cd/docker/2023/10/27/gitea-runner-build-docker-containers.html
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*'
|
||||
|
||||
jobs:
|
||||
docker:
|
||||
# see on runner /data/.runner to add label (test => test:docker://debian:bullseye)
|
||||
runs-on: test
|
||||
container: debian:bullseye
|
||||
# runs-on: ubuntu-latest
|
||||
# container: node:16-bullseye
|
||||
steps:
|
||||
|
||||
- name: Print version and repository
|
||||
run: echo "Runner working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}"
|
||||
|
||||
- name: Install nodejs for github action
|
||||
run: |
|
||||
apt-get -y install node
|
||||
|
||||
- name: Git clone private repo
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: ${{ gitea.repository }}
|
||||
token: ${{ secrets.ACCESS_TOKEN_GIT }}
|
||||
|
||||
- name: Install Docker engine
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get -y install ca-certificates curl gnupg dnsutils
|
||||
install -m 0755 -d /etc/apt/keyrings
|
||||
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||||
chmod a+r /etc/apt/keyrings/docker.gpg
|
||||
echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
apt-get update
|
||||
apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin
|
||||
|
||||
# - name: Git clone private repo
|
||||
# uses: actions/checkout@v4
|
||||
# with:
|
||||
# repository: ${{ gitea.repository }}
|
||||
# token: ${{ secrets.ACCESS_TOKEN_GIT }}
|
||||
|
||||
- name: Login to docker private registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ vars.REGISTRY_DOCKER }}
|
||||
username: ${{ secrets.REGISTRY_DOCKER_USER }}
|
||||
password: ${{ secrets.REGISTRY_DOCKER_PASS }}
|
||||
|
||||
- name: Build and push image in registry
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
tags: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_NAME }}:latest,${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_NAME }}:${{ gitea.ref_name }}
|
||||
|
||||
- name: Show docker images
|
||||
run: docker images
|
||||
52
.gitea/workflows/build_image_debian_runner.yml
Normal file
52
.gitea/workflows/build_image_debian_runner.yml
Normal file
@@ -0,0 +1,52 @@
|
||||
name: ci/cd to build and push docker image debian_runner in private registry
|
||||
|
||||
#https://docs.docker.com/build/ci/github-actions/push-multi-registries/
|
||||
#https://www.devsync.se/ci/cd/docker/2023/10/27/gitea-runner-build-docker-containers.html
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
# Be carefull, conflict with package-deb *.*.*, don't use more than on dot *.* (ex: 2.5-runner)
|
||||
- '*-runner'
|
||||
|
||||
jobs:
|
||||
build-and-push-debian-runner:
|
||||
# see on runner /data/.runner to add label (test => test:docker://debian:bullseye)
|
||||
# runs-on: test
|
||||
# container: debian:bullseye
|
||||
# runs-on: ubuntu-latest
|
||||
# container: node:16-bullseye
|
||||
runs-on: debian-runner
|
||||
container:
|
||||
image: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_RUNNER }}:latest
|
||||
credentials:
|
||||
username: ${{ secrets.REGISTRY_DOCKER_USER }}
|
||||
password: ${{ secrets.REGISTRY_DOCKER_PASS }}
|
||||
|
||||
|
||||
steps:
|
||||
- name: Show Information
|
||||
run: echo "Runner ${{ runner.os }} working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}"
|
||||
|
||||
- name: Git clone private repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: ${{ gitea.repository }}
|
||||
token: ${{ secrets.REPO_PULL_GITEA }}
|
||||
|
||||
- name: Login to docker private registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ vars.REGISTRY_DOCKER }}
|
||||
username: ${{ secrets.REGISTRY_DOCKER_USER }}
|
||||
password: ${{ secrets.REGISTRY_DOCKER_PASS }}
|
||||
|
||||
- name: Build and push image in registry
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
tags: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_NAME }}:latest,${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_NAME }}:${{ gitea.ref_name }}
|
||||
|
||||
- name: Output
|
||||
run: echo "Runner push on ${{ vars.REGISTRY_DOCKER }} image ${{ vars.DOCKER_IMAGE_NAME }} tag ${{ gitea.ref_name }}"
|
||||
42
.gitea/workflows/build_image_wafwoof.yml
Normal file
42
.gitea/workflows/build_image_wafwoof.yml
Normal file
@@ -0,0 +1,42 @@
|
||||
name: ci/cd to build and push docker image wafwoof in private registry
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
# Be carefull, conflict with package-deb *.*.*, don't use more than on dot *.* (ex: 2.5-runner)
|
||||
- '*-waf'
|
||||
|
||||
jobs:
|
||||
build-and-push-image:
|
||||
# see on runner /data/.runner to add label (test => test:docker://debian:bullseye)
|
||||
# runs-on: test
|
||||
# container: debian:bullseye
|
||||
# runs-on: ubuntu-latest
|
||||
# container: node:16-bullseye
|
||||
runs-on: debian-runner
|
||||
container:
|
||||
image: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_RUNNER }}:latest
|
||||
credentials:
|
||||
username: ${{ secrets.REGISTRY_DOCKER_USER }}
|
||||
password: ${{ secrets.REGISTRY_DOCKER_PASS }}
|
||||
|
||||
steps:
|
||||
- name: Show Information
|
||||
run: echo "Runner ${{ runner.os }} working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}"
|
||||
|
||||
- name: Login to docker private registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ vars.REGISTRY_DOCKER }}
|
||||
username: ${{ secrets.REGISTRY_DOCKER_USER }}
|
||||
password: ${{ secrets.REGISTRY_DOCKER_PASS }}
|
||||
|
||||
- name: git clone repo
|
||||
run: |
|
||||
git clone https://github.com/EnableSecurity/wafw00f
|
||||
docker buildx b . -t ${{ vars.DOCKER_IMAGE_WAFWOOF }}
|
||||
docker tag ${{ vars.DOCKER_IMAGE_WAFWOOF }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_WAFWOOF }}
|
||||
docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_WAFWOOF }}
|
||||
|
||||
- name: Output
|
||||
run: echo "Runner push on ${{ vars.REGISTRY_DOCKER }} image ${{ vars.DOCKER_IMAGE_WAFWOOF }} tag ${{ gitea.ref_name }}"
|
||||
55
.gitea/workflows/build_package_deb.yml
Normal file
55
.gitea/workflows/build_package_deb.yml
Normal file
@@ -0,0 +1,55 @@
|
||||
name: build_package_deb
|
||||
|
||||
env:
|
||||
PACKAGE_NAME: test3
|
||||
DEB_OS_TARGET: bullseye
|
||||
GIT_REPO_URL: gitea.jingoh.fr
|
||||
MAINTAINER: jingoh
|
||||
ARCH: amd64
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*.*.[0-9]'
|
||||
|
||||
jobs:
|
||||
build-package-push-repo:
|
||||
runs-on: debian-bullseye-node
|
||||
steps:
|
||||
- name: Git clone private repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: ${{ gitea.repository }}
|
||||
token: ${{ secrets.REPO_PULL_GITEA }}
|
||||
|
||||
- name: create sample script
|
||||
run: |
|
||||
mkdir -p .debpkg/usr/bin
|
||||
mkdir -p .debpkg/usr/lib/samplescript
|
||||
echo -e "echo sample" > .debpkg/usr/bin/samplescript
|
||||
chmod +x .debpkg/usr/bin/samplescript
|
||||
echo -e "a=1" > .debpkg/usr/lib/samplescript/samplescript.conf
|
||||
|
||||
# create DEBIAN directory if you want to add other pre/post scripts
|
||||
mkdir -p .debpkg/DEBIAN
|
||||
echo -e "echo postinst" > .debpkg/DEBIAN/postinst
|
||||
chmod +x .debpkg/DEBIAN/postinst
|
||||
|
||||
- uses: jiro4989/build-deb-action@v3
|
||||
with:
|
||||
package: ${{ env.PACKAGE_NAME }}
|
||||
package_root: .debpkg
|
||||
maintainer: ${{ env.MAINTAINER }}
|
||||
version: ${{ gitea.ref_name }}
|
||||
arch: 'amd64'
|
||||
depends: 'libc6 (>= 2.2.1), git'
|
||||
desc: 'this is sample package.'
|
||||
|
||||
- name: Push packages
|
||||
run: |
|
||||
curl --user ${{ vars.REPO_GITEA_USER }}:${{ secrets.PACKAGE_PUSH_REPO }} \
|
||||
--upload-file ${{ env.PACKAGE_NAME }}_${{ gitea.ref_name }}_${{ env.ARCH }}.deb \
|
||||
https://${{ env.GIT_REPO_URL }}/api/packages/${{ vars.REPO_GITEA_USER }}/debian/pool/${{ env.DEB_OS_TARGET }}/main/upload
|
||||
|
||||
- name: Output
|
||||
run: echo "Runner push on ${{ env.GIT_REPO_URL }} with user ${{ vars.REPO_GITEA_USER }} package ${{ env.PACKAGE_NAME }} os ${{ env.DEB_OS_TARGET }} tag ${{ gitea.ref_name }}"
|
||||
@@ -6,23 +6,15 @@ on: [never]
|
||||
|
||||
jobs:
|
||||
Explore-Gitea-Actions:
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: debian-bullseye-node
|
||||
steps:
|
||||
- run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event. Test 4zet"
|
||||
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!"
|
||||
- run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
|
||||
- name: Checkout private tools
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
# tape git@gitea.jingoh.fr port 22 et pas port 443 cet ane (should be ssh://gitea.jingoh.fr:443/$repository au lieu de ssh://gitea.jingoh.fr:$repository)
|
||||
repository: staffadmin/gitea-runner
|
||||
persist-credentials: false
|
||||
ssh-strict: false
|
||||
token: ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT
|
||||
ssh-known-hosts: ${{ secrets.SSH_KNOWN_GITEA }}
|
||||
- run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
|
||||
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
|
||||
- run: echo "lala"
|
||||
- run: echo "${{ vars.TEST }}"
|
||||
- name: List files in the repository
|
||||
run: |
|
||||
ls ${{ gitea.workspace }}
|
||||
|
||||
31
Dockerfile
31
Dockerfile
@@ -1,9 +1,30 @@
|
||||
|
||||
# Container image that runs your code
|
||||
FROM alpine:3.10
|
||||
FROM debian:bullseye
|
||||
|
||||
# Copies your code file from your action repository to the filesystem path `/` of the container
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
ENV NODE_MAJOR 16
|
||||
|
||||
# Code file to execute when the docker container starts up (`entrypoint.sh`)
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
# install dependancies packages
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y curl \
|
||||
dnsutils \
|
||||
git \
|
||||
ca-certificates \
|
||||
gnupg
|
||||
|
||||
# NODE
|
||||
RUN install -m 0755 -d /etc/apt/keyrings
|
||||
RUN curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
|
||||
RUN echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
|
||||
|
||||
# DOCKER
|
||||
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||||
RUN chmod a+r /etc/apt/keyrings/docker.gpg
|
||||
RUN echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y nodejs \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin
|
||||
17
README.md
17
README.md
@@ -1,13 +1,8 @@
|
||||
Création d'un nouveau dépôt en ligne de commande
|
||||
# Docker debian runner
|
||||
|
||||
touch README.md
|
||||
git init
|
||||
git checkout -b main
|
||||
git add README.md
|
||||
git commit -m "first commit"
|
||||
git remote add origin ssh://git@gitea.jingoh.fr:443/staffadmin/gitea-runner.git
|
||||
git push -u origin main
|
||||
Soumission d'un dépôt existant par ligne de commande
|
||||
This project should own all docker build/push runner
|
||||
|
||||
git remote add origin ssh://git@gitea.jingoh.fr:443/staffadmin/gitea-runner.git
|
||||
git push -u origin main
|
||||
* debian_runner
|
||||
* wafwoof
|
||||
|
||||
Build deb package and push on gitea repo example
|
||||
@@ -1,5 +0,0 @@
|
||||
#!/bin/sh -l
|
||||
|
||||
echo "Hello $1"
|
||||
time=$(date)
|
||||
echo "time=$time" >> $GITHUB_OUTPUT
|
||||
Reference in New Issue
Block a user