From 8828ea64c5c19d2a05ee2ab6f61a34a1cd97d88e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rcio=20Fernandes?= Date: Sat, 19 Sep 2026 16:47:35 +0000 Subject: [PATCH] add: OCI image deploy --- .devcontainer/devcontainer.json | 27 ++++++++--------------- .gitea/workflows/image-deploy.yaml | 35 ++++++++++++++++++++++++++++++ Dockerfile | 17 +++++++++++++++ README.md | 11 ++++++++++ 4 files changed, 72 insertions(+), 18 deletions(-) create mode 100644 .gitea/workflows/image-deploy.yaml create mode 100644 Dockerfile diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index a45c99f..1b2127a 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,34 +1,25 @@ -// For format details, see https://aka.ms/devcontainer.json. For config options, see the -// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu { - "name": "mylimbo-ansible-roles-dev", - "image": "oci.limbosolutions.com/public/devcontainers/devops:latest", + "name": "dev", + "image": "oci.limbosolutions.com/public/devcontainers/container-builder:fatboy-latest", "runArgs": [ - "--hostname=mylimbo-ansible-roles-dev" + "--hostname=dev" ], - // "features": {}, - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [], - // Configure tool-specific properties. - // "customizations": {}, "mounts": [ - "source=${localEnv:HOME}/.gitconfig,target=/home/vscode/.gitconfig,type=bind,consistency=cached", - "source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached" + "source=${localEnv:HOME}/.gitconfig,target=/home/code/.gitconfig,type=bind,consistency=cached", + "source=${localEnv:HOME}/.ssh,target=/home/code/.ssh,type=bind,consistency=cached" ], - "remoteEnv": { - + "remoteEnv": { + "DOCKER_HOST": "ssh://mf@lazarus.dev.lan" }, - "customizations": { "vscode": { "extensions": [ - "redhat.ansible", "stateful.runme", "yzhang.markdown-all-in-one", - "davidanson.vscode-markdownlint", - "eamodio.gitlens" + "eamodio.gitlens", + "ms-azuretools.vscode-containers" ], "settings": { "terminal.integrated.defaultProfile.linux": "zsh" diff --git a/.gitea/workflows/image-deploy.yaml b/.gitea/workflows/image-deploy.yaml new file mode 100644 index 0000000..573eb61 --- /dev/null +++ b/.gitea/workflows/image-deploy.yaml @@ -0,0 +1,35 @@ +on: + push: + branches: + - main + schedule: + - cron: '@weekly' # once per week + +jobs: + + build-push-image: + runs-on: ["oci-image-builder", "amd64"] + + steps: + + - name: Checkout code + uses: actions/checkout@v2 + + - name: Fetch limbo public actions + env: + RUNNER_TEMP: "${{ runner.temp }}" + WORKSPACE: "${{ gitea.workspace }}" + run: | + curl -fsSL https://git.limbosolutions.com/kb/gitea/raw/branch/main/cloud-scripts/setup-limbo-actions.sh | bash 2>&1 + + + - name: Build and push Image + uses: ./.gitea/limbo_actions/buildkit-build-push + with: + tags: oci.limbosolutions.com/public/mylimbo.ansible.collections.global:latest + registry_addr: ${{ vars.OCI_LIMBO_REGISTRY_ADDRESS }} + registry_username: ${{ secrets.OCI_LIMBO_REGISTRY_PUBLIC_USERNAME }} + registry_password: ${{ secrets.OCI_LIMBO_REGISTRY_PUBLIC_PASSWORD }} + buildkit_addr: ${{ vars.BUILDKIT_ADDRESS }} + dockerfile: ${{gitea.workspace}} + context: ${{gitea.workspace}} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3304448 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +FROM alpine/ansible:latest + +RUN mkdir -p /usr/share/ansible/collections/ansible_collections/mylimbo/globals + +COPY galaxy.yml /usr/share/ansible/collections/ansible_collections/mylimbo +COPY LICENSE /usr/share/ansible/collections/ansible_collections/mylimbo +COPY README.md /usr/share/ansible/collections/ansible_collections/mylimbo +COPY playbooks /usr/share/ansible/collections/ansible_collections/mylimbo/globals/playbooks +COPY roles /usr/share/ansible/collections/ansible_collections/mylimbo/globals/roles + +RUN addgroup ansible +RUN adduser -D -h /home/ansible -s /bin/bash -G ansible ansible +RUN mkdir -p /worskpace +RUN chown ansible:ansible /worskpace +USER ansible + + diff --git a/README.md b/README.md index eb8fc28..abebe75 100644 --- a/README.md +++ b/README.md @@ -1 +1,12 @@ # myLimbo.ansible.roles + +## docker + +### dev + +```bash +docker build . -t mylimbo.ansible.global.collection:dev-latest +#docker run mylimbo.ansible.global.collection:dev-latest ansible-playbook mylimbo.globals.k3s.crictl_prune +docker run -it mylimbo.ansible.global.collection:dev-latest /bin/bash +``` +