mirror of
https://github.com/thegeeklab/ansible-doctor.git
synced 2024-11-29 00:00:35 +00:00
add container build requirements
This commit is contained in:
parent
ce419e2125
commit
bfb58a8622
@ -93,9 +93,9 @@ local PipelineSecurity = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
local PipelineBuild = {
|
local PipelineBuildPackage = {
|
||||||
kind: "pipeline",
|
kind: "pipeline",
|
||||||
name: "build",
|
name: "build-package",
|
||||||
platform: {
|
platform: {
|
||||||
os: "linux",
|
os: "linux",
|
||||||
arch: "amd64",
|
arch: "amd64",
|
||||||
@ -155,6 +155,60 @@ local PipelineBuild = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
local PipelineBuildContainer(arch="amd64") = {
|
||||||
|
kind: "pipeline",
|
||||||
|
name: "build-container-" + arch,
|
||||||
|
platform: {
|
||||||
|
os: "linux",
|
||||||
|
arch: arch,
|
||||||
|
},
|
||||||
|
steps: [
|
||||||
|
{
|
||||||
|
name: "build",
|
||||||
|
image: "python:3.7",
|
||||||
|
pull: "always",
|
||||||
|
commands: [
|
||||||
|
"python setup.py sdist",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "dryrun",
|
||||||
|
image: "plugins/docker:linux-" + arch,
|
||||||
|
pull: "always",
|
||||||
|
settings: {
|
||||||
|
dry_run: true,
|
||||||
|
tags: arch,
|
||||||
|
dockerfile: "Dockerfile",
|
||||||
|
repo: "xoxys/ansible-doctor",
|
||||||
|
username: { "from_secret": "docker_username" },
|
||||||
|
password: { "from_secret": "docker_password" },
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "publish",
|
||||||
|
image: "plugins/docker:linux-" + arch,
|
||||||
|
pull: "always",
|
||||||
|
settings: {
|
||||||
|
auto_tag: true,
|
||||||
|
auto_tag_suffix: arch,
|
||||||
|
dockerfile: "Dockerfile",
|
||||||
|
repo: "xoxys/ansible-doctor",
|
||||||
|
username: { "from_secret": "docker_username" },
|
||||||
|
password: { "from_secret": "docker_password" },
|
||||||
|
},
|
||||||
|
when: {
|
||||||
|
ref: [ "refs/tags/**" ],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
depends_on: [
|
||||||
|
"security",
|
||||||
|
],
|
||||||
|
trigger: {
|
||||||
|
ref: ["refs/heads/master", "refs/tags/**", "refs/pull/**"],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
local PipelineNotifications = {
|
local PipelineNotifications = {
|
||||||
kind: "pipeline",
|
kind: "pipeline",
|
||||||
name: "notifications",
|
name: "notifications",
|
||||||
@ -188,6 +242,9 @@ local PipelineNotifications = {
|
|||||||
PipelineLint,
|
PipelineLint,
|
||||||
PipelineTest,
|
PipelineTest,
|
||||||
PipelineSecurity,
|
PipelineSecurity,
|
||||||
PipelineBuild,
|
PipelineBuildPackage,
|
||||||
|
PipelineBuildContainer(arch="amd64"),
|
||||||
|
PipelineBuildContainer(arch="arm64"),
|
||||||
|
PipelineBuildContainer(arch="arm"),
|
||||||
PipelineNotifications,
|
PipelineNotifications,
|
||||||
]
|
]
|
||||||
|
163
.drone.yml
163
.drone.yml
@ -119,7 +119,7 @@ depends_on:
|
|||||||
|
|
||||||
---
|
---
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
name: build
|
name: build-package
|
||||||
|
|
||||||
platform:
|
platform:
|
||||||
os: linux
|
os: linux
|
||||||
@ -177,6 +177,165 @@ trigger:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- security
|
- security
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: build-container-amd64
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build
|
||||||
|
pull: always
|
||||||
|
image: python:3.7
|
||||||
|
commands:
|
||||||
|
- python setup.py sdist
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-amd64
|
||||||
|
settings:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
tags: amd64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-amd64
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: amd64
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
ref:
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- security
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: build-container-arm64
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build
|
||||||
|
pull: always
|
||||||
|
image: python:3.7
|
||||||
|
commands:
|
||||||
|
- python setup.py sdist
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm64
|
||||||
|
settings:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
tags: arm64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm64
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: arm64
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
ref:
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- security
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: build-container-arm
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build
|
||||||
|
pull: always
|
||||||
|
image: python:3.7
|
||||||
|
commands:
|
||||||
|
- python setup.py sdist
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm
|
||||||
|
settings:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
tags: arm
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:linux-arm
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: arm
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: xoxys/ansible-doctor
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
ref:
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- security
|
||||||
|
|
||||||
---
|
---
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
name: notifications
|
name: notifications
|
||||||
@ -212,6 +371,6 @@ depends_on:
|
|||||||
|
|
||||||
---
|
---
|
||||||
kind: signature
|
kind: signature
|
||||||
hmac: 602f1e2058d0b5d15da827d7893c2f111bb161741bfd7ea60cc2b882e1a54ea2
|
hmac: 0ac43538538113c88342a17b4cc14b9e08f8540247844cac6cd46f7116048332
|
||||||
|
|
||||||
...
|
...
|
||||||
|
@ -6,12 +6,15 @@ LABEL maintainer="Robert Kaussow <mail@geeklabor.de>" \
|
|||||||
org.label-schema.vendor="Robert Kaussow" \
|
org.label-schema.vendor="Robert Kaussow" \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
ADD dist/ansible_doctor*.whl /ansible_doctor.whl
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
apk update --no-cache \
|
apk update --no-cache \
|
||||||
&& rm -rf /var/cache/apk/* \
|
rm -rf /var/cache/apk/* && \
|
||||||
&& pip install --upgrade --no-cache-dir pip \
|
pip install --upgrade --no-cache-dir pip && \
|
||||||
&& pip install --no-cache-dir ${PIP_PACKAGES} \
|
pip install --no-cache-dir ansible_doctor.whl && \
|
||||||
&& rm -rf /root/.cache/
|
rm -f ansible_doctor.whl && \
|
||||||
|
rm -rf /root/.cache/
|
||||||
|
|
||||||
USER root
|
USER root
|
||||||
CMD []
|
CMD []
|
25
manifest.tmpl
Normal file
25
manifest.tmpl
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
image: xoxys/ansible-doctor:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||||
|
{{#if build.tags}}
|
||||||
|
tags:
|
||||||
|
{{#each build.tags}}
|
||||||
|
{{#if this}}
|
||||||
|
- {{trimPrefix "v" this}}
|
||||||
|
- {{trimPrefix "v" this}}-linux-amd64
|
||||||
|
{{/if}}
|
||||||
|
{{/each}}
|
||||||
|
{{/if}}
|
||||||
|
manifests:
|
||||||
|
- image: xoxys/ansible-doctor:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: linux
|
||||||
|
|
||||||
|
- image: xoxys/ansible-doctor:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64
|
||||||
|
platform:
|
||||||
|
architecture: arm64
|
||||||
|
os: linux
|
||||||
|
|
||||||
|
- image: xoxys/ansible-doctor:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm
|
||||||
|
platform:
|
||||||
|
architecture: arm
|
||||||
|
os: linux
|
Loading…
Reference in New Issue
Block a user