Compare commits
16 Commits
31a1ad4e72
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 20e0155e8c | |||
| dcb47da9f7 | |||
| be642e2c4d | |||
| 46585688c6 | |||
| 837235524a | |||
| 92223686ff | |||
| 8a9583e3a3 | |||
| 1fb403fd64 | |||
| fb01815c85 | |||
| 9c11f1705c | |||
| aad30fda0f | |||
| 3b63958dce | |||
| d8a3cba654 | |||
| 844ac546e5 | |||
| f121308163 | |||
| 581ee0ddf7 |
128
.drone.yml
128
.drone.yml
@@ -1,76 +1,130 @@
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: linux-amd64
|
||||
platform:
|
||||
os: linux
|
||||
arch: amd64
|
||||
name: amd64-main
|
||||
node_selector: # Ensure this runs on an amd64 runner
|
||||
kubernetes.io/arch: amd64
|
||||
trigger: # Only run on pushes to the main branch
|
||||
event: [ push ]
|
||||
branch: [ main ]
|
||||
steps:
|
||||
- name: build_push_amd64_latest
|
||||
image: plugins/docker # Use Docker plugin to build and push image
|
||||
settings:
|
||||
repo: bottledpills/deluge-openvpn
|
||||
dockerfile: docker/Dockerfile.amd64
|
||||
tags:
|
||||
- latest-linux-amd64 # Tag for amd64 variant (main branch → "latest")
|
||||
username:
|
||||
from_secret: docker_username # Docker registry credentials (secret)
|
||||
password:
|
||||
from_secret: docker_password
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: arm64-main
|
||||
node_selector: # Ensure this runs on an arm64 runner
|
||||
kubernetes.io/arch: arm64
|
||||
trigger: # Only run on pushes to the main branch
|
||||
event: [ push ]
|
||||
branch: [ main ]
|
||||
steps:
|
||||
- name: build_push_arm64_latest
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: bottledpills/deluge-openvpn
|
||||
dockerfile: docker/Dockerfile.arm64
|
||||
tags:
|
||||
- latest-linux-arm64 # Tag for arm64 variant (main branch → "latest")
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: amd64-tag
|
||||
node_selector:
|
||||
kubernetes.io/arch: amd64
|
||||
trigger:
|
||||
event:
|
||||
- push
|
||||
trigger: # Only run on creation of Git tags (releases)
|
||||
event: [ tag ]
|
||||
steps:
|
||||
- name: docker
|
||||
- name: build_push_amd64_version
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: bottledpills/deluge-openvpn
|
||||
dockerfile: docker/Dockerfile.amd64
|
||||
# Use Drone env substitution to strip the leading "v" from the tag [oai_citation_attribution:0‡docs.drone.io](https://docs.drone.io/pipeline/environment/substitution/#:~:text=,0)
|
||||
tags:
|
||||
- ${DRONE_TAG##v}-linux-amd64 # e.g. "v2.0.1" → "2.0.1-linux-amd64"
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
repo: bottledpills/deluge-openvpn
|
||||
auto_tag: true
|
||||
auto_tag_suffix: linux-amd64
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: linux-arm64
|
||||
platform:
|
||||
os: linux
|
||||
arch: arm64
|
||||
name: arm64-tag
|
||||
node_selector:
|
||||
kubernetes.io/arch: arm64
|
||||
trigger:
|
||||
event:
|
||||
- push
|
||||
trigger: # Only run on creation of Git tags (releases)
|
||||
event: [ tag ]
|
||||
steps:
|
||||
- name: docker
|
||||
- name: build_push_arm64_version
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: bottledpills/deluge-openvpn
|
||||
dockerfile: docker/Dockerfile.arm64
|
||||
tags:
|
||||
- ${DRONE_TAG##v}-linux-arm64 # e.g. "v2.0.1" → "2.0.1-linux-arm64"
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
repo: bottledpills/deluge-openvpn
|
||||
auto_tag: true
|
||||
auto_tag_suffix: linux-arm64
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: manifest
|
||||
platform:
|
||||
os: linux
|
||||
arch: arm64
|
||||
name: manifest-main
|
||||
# The manifest step can run on either architecture; we'll use amd64 for consistency
|
||||
node_selector:
|
||||
kubernetes.io/arch: arm64
|
||||
trigger:
|
||||
event:
|
||||
- push
|
||||
kubernetes.io/arch: amd64
|
||||
trigger: # Run on main branch pushes (to create "latest" manifest)
|
||||
event: [ push ]
|
||||
branch: [ main ]
|
||||
depends_on: # Wait for both arch images to be built and pushed
|
||||
- amd64-main
|
||||
- arm64-main
|
||||
steps:
|
||||
- name: manifest
|
||||
- name: push_manifest_latest
|
||||
image: plugins/manifest # Drone manifest plugin to create multi-arch manifest
|
||||
settings:
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
spec: docker/manifest.tmpl # Use external manifest template for tags and images
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: manifest-tag
|
||||
node_selector:
|
||||
kubernetes.io/arch: amd64
|
||||
trigger: # Run on tag events (to create versioned manifest)
|
||||
event: [ tag ]
|
||||
depends_on:
|
||||
- amd64-tag
|
||||
- arm64-tag
|
||||
steps:
|
||||
- name: push_manifest_version
|
||||
image: plugins/manifest
|
||||
settings:
|
||||
spec: docker/manifest.tmpl
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
auto_tag: true
|
||||
ignore_missing: true
|
||||
depends_on:
|
||||
- linux-amd64
|
||||
- linux-arm64
|
||||
spec: docker/manifest.tmpl # Same template handles both latest and version tags
|
||||
@@ -1,7 +1,7 @@
|
||||
# OpenVPN and Deluge with WebUI
|
||||
|
||||
/badge.svg?branch=master)
|
||||
[](https://hub.docker.com/r/ebrianne/docker-deluge-openvpn/)
|
||||
[](https://drone.beatrice.wtf/bea/docker-deluge-openvpn)
|
||||
[](https://hub.docker.com/r/bottledpills/deluge-openvpn/)
|
||||
|
||||
## Acknowledgments
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM ubuntu:24.04
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
ENV DUMB_INIT_BASE_URL="https://github.com/Yelp/dumb-init/releases/download/v1.2.5"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM ubuntu:24.04
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
ENV DUMB_INIT_BASE_URL="https://github.com/Yelp/dumb-init/releases/download/v1.2.5"
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
# docker/manifest.tmpl
|
||||
image: bottledpills/deluge-openvpn:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||
|
||||
manifests:
|
||||
-
|
||||
image: bottledpills/deluge-openvpn:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||
platform:
|
||||
architecture: amd64
|
||||
os: linux
|
||||
-
|
||||
image: bottledpills/deluge-openvpn:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64
|
||||
platform:
|
||||
architecture: arm64
|
||||
os: linux
|
||||
- image: bottledpills/deluge-openvpn:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||
platform:
|
||||
architecture: amd64
|
||||
os: linux
|
||||
|
||||
- image: bottledpills/deluge-openvpn:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64
|
||||
platform:
|
||||
architecture: arm64
|
||||
os: linux
|
||||
variant: v8
|
||||
Reference in New Issue
Block a user