use llm generated content

This commit is contained in:
2025-08-06 18:48:09 +02:00
parent fee8e13edd
commit 8b72dcbf6c
5 changed files with 114 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
name: 🚀 Build & Push tofu-node Docker Image
on:
push:
branches: [main]
workflow_dispatch: # ✅ permet de déclencher manuellement depuis l'UI
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Login to Gitea Container Registry
uses: docker/login-action@v3
with:
registry: gitea.arcodange.duckdns.org
username: ${{ github.actor }}
password: ${{ secrets.PACKAGES_TOKEN }}
- name: 🐳 Build and Push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: |
gitea.arcodange.duckdns.org/${{ github.repository }}:latest
gitea.arcodange.duckdns.org/${{ github.repository }}:${{ github.sha }}

View File

@@ -0,0 +1,24 @@
name: 🧪 Test tofu-node container
on:
workflow_dispatch: # ✅ déclenchable manuellement depuis Gitea UI
jobs:
test:
runs-on: ubuntu-latest
container:
image: gitea.arcodange.duckdns.org/arcodange-org/docker.tofu:latest
steps:
- name: ✅ Test Node
run: node -v
- name: ✅ Test tofu
run: tofu --version
- name: ✅ Test git, ssh, jq, yq
run: |
git --version
ssh -V
jq --version
yq --version

25
Dockerfile Normal file
View File

@@ -0,0 +1,25 @@
FROM node:lts-alpine
LABEL maintainer="Arcodange arcodange@gmail.com"
LABEL description="Image minimaliste avec OpenTofu, Node.js, git, curl, jq, yq, openssh"
# Dépendances système
RUN apk add --no-cache \
bash \
curl \
git \
openssh \
jq \
yq \
ca-certificates
# Installer OpenTofu via le script officiel
# Variables
ENV TOFU_VERSION="1.10.3"
RUN curl -fsSL https://get.opentofu.org/install-opentofu.sh | bash -s -- --install-method standalone --opentofu-version ${TOFU_VERSION} --skip-verify
# Vérifications (optionnel)
RUN node -v && npm -v && tofu -version && git --version && ssh -V && jq --version && yq --version
ENV PATH="/usr/local/bin:${PATH}"
CMD [ "/bin/sh"]

View File

@@ -0,0 +1,23 @@
# 🐳 tofu-node (Alpine)
Image Docker **ultra-légère** pour CI/CD avec :
- 🧠 Node.js LTS (alpine)
- 🌱 OpenTofu (dernier stable)
- 🔧 git, curl, jq, yq
## ✅ Contenu
| Outil | Version |
|-----------|------------------------|
| Node.js | LTS (via Alpine) |
| OpenTofu | Dernière release |
| jq | via apk |
| yq | via apk (mikefarah/yq) |
| git, curl | via apk |
## 🧪 Exemple d'usage
```bash
docker run -it ghcr.io/your-org/tofu-node:latest sh
```

14
build.sh Executable file
View File

@@ -0,0 +1,14 @@
#!/bin/sh
set -eu
IMAGE_NAME="docker.tofu"
ORG="arcodange-org" # à remplacer
TAG="latest"
echo "🔨 Building $ORG/$IMAGE_NAME:$TAG..."
docker build -t gitea.arcodange.duckdns.org/$ORG/$IMAGE_NAME:$TAG .
echo "✅ Build complete."
echo "🔍 Testing..."
docker run --rm gitea.arcodange.duckdns.org/$ORG/$IMAGE_NAME:$TAG tofu -version
docker run --rm gitea.arcodange.duckdns.org/$ORG/$IMAGE_NAME:$TAG node -v