From 87390a1be5cfcb234f82961aea2d2b2de0e29628 Mon Sep 17 00:00:00 2001 From: Robert Kaussow Date: Tue, 8 Oct 2019 15:39:08 +0200 Subject: [PATCH] enable drone --- .drone.jsonnet | 22 ++++- .drone.yml | 184 +++++++++++++++++++++++++++++++++++++++ Dockerfile.linux | 17 ++++ Dockerfile.linux.amd64 | 32 ------- Dockerfile.linux.arm32v6 | 32 ------- Dockerfile.linux.arm64v8 | 32 ------- 6 files changed, 219 insertions(+), 100 deletions(-) create mode 100644 .drone.yml create mode 100644 Dockerfile.linux delete mode 100644 Dockerfile.linux.amd64 delete mode 100644 Dockerfile.linux.arm32v6 delete mode 100644 Dockerfile.linux.arm64v8 diff --git a/.drone.jsonnet b/.drone.jsonnet index 1771325..786565e 100644 --- a/.drone.jsonnet +++ b/.drone.jsonnet @@ -118,12 +118,12 @@ local PipelineBuild = { ], }, { - name: "publish-gitea", - image: "plugins/gitea-release", + name: "publish-github", + image: "plugins/github-release", pull: "always", settings: { - base_url: "https://gitea.owncloud.services", - api_key: { "from_secret": "gitea_token"}, + overwrite: true, + api_key: { "from_secret": "github_token"}, files: ["dist/*", "sha256sum.txt"], title: "${DRONE_TAG}", note: "CHANGELOG.md", @@ -132,6 +132,20 @@ local PipelineBuild = { ref: [ "refs/tags/**" ], }, }, + { + name: "publish-pypi", + image: "plugins/pypi", + pull: "always", + settings: { + username: { "from_secret": "pypi_username" }, + password: { "from_secret": "pypi_password" }, + repository: "https://upload.pypi.org/legacy/", + skip_build: true + }, + when: { + ref: [ "refs/tags/**" ], + }, + }, ], depends_on: [ "security", diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..49e1aed --- /dev/null +++ b/.drone.yml @@ -0,0 +1,184 @@ +--- +kind: pipeline +name: lint + +platform: + os: linux + arch: amd64 + +steps: +- name: flake8 + pull: always + image: python:3.7 + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - flake8 ./ansibledoctor + environment: + PY_COLORS: 1 + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + - "refs/pull/**" + +--- +kind: pipeline +name: test + +platform: + os: linux + arch: amd64 + +steps: +- name: python35-pytest + pull: always + image: python:3.5 + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - ansible-doctor --help + environment: + PY_COLORS: 1 + depends_on: + - clone + +- name: python36-pytest + pull: always + image: python:3.6 + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - ansible-doctor --help + environment: + PY_COLORS: 1 + depends_on: + - clone + +- name: python37-pytest + pull: always + image: python:3.7 + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - ansible-doctor --help + environment: + PY_COLORS: 1 + depends_on: + - clone + +- name: python38-rc-pytest + pull: always + image: python:3.8-rc + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - ansible-doctor --help + environment: + PY_COLORS: 1 + depends_on: + - clone + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + - "refs/pull/**" + +depends_on: +- lint + +--- +kind: pipeline +name: security + +platform: + os: linux + arch: amd64 + +steps: +- name: bandit + pull: always + image: python:3.7 + commands: + - pip install -r test-requirements.txt -qq + - pip install -qq . + - bandit -r ./ansibledoctor -x ./ansibledoctor/tests + environment: + PY_COLORS: 1 + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + - "refs/pull/**" + +depends_on: +- test + +--- +kind: pipeline +name: build + +platform: + os: linux + arch: amd64 + +steps: +- name: build + pull: always + image: python:3.7 + commands: + - python setup.py sdist bdist_wheel + +- name: checksum + pull: always + image: alpine + commands: + - "cd dist/ && sha256sum * > sha256sum.txt" + +- name: publish-github + pull: always + image: plugins/github-release + settings: + api_key: + from_secret: github_token + files: + - "dist/*" + - sha256sum.txt + note: CHANGELOG.md + overwrite: true + title: "${DRONE_TAG}" + when: + ref: + - "refs/tags/**" + +- name: publish-pypi + pull: always + image: plugins/pypi + settings: + password: + from_secret: pypi_password + repository: https://upload.pypi.org/legacy/ + skip_build: true + username: + from_secret: pypi_username + when: + ref: + - "refs/tags/**" + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + - "refs/pull/**" + +depends_on: +- security + +--- +kind: signature +hmac: 7b7b9ad0e0945e50acc6c70bd430574f6ab8df62013692e12cbdcf5018baafe9 + +... diff --git a/Dockerfile.linux b/Dockerfile.linux new file mode 100644 index 0000000..c0762cf --- /dev/null +++ b/Dockerfile.linux @@ -0,0 +1,17 @@ +FROM python:3.7-alpine + +LABEL maintainer="Robert Kaussow " \ + org.label-schema.name="ansible-doctor" \ + org.label-schema.vcs-url="https://github.com/xoxys/ansible-doctor" \ + org.label-schema.vendor="Robert Kaussow" \ + org.label-schema.schema-version="1.0" + +RUN \ + apk update --no-cache \ + && rm -rf /var/cache/apk/* \ + && pip install --upgrade --no-cache-dir pip \ + && pip install --no-cache-dir ${PIP_PACKAGES} \ + && rm -rf /root/.cache/ + +USER root +CMD [] diff --git a/Dockerfile.linux.amd64 b/Dockerfile.linux.amd64 deleted file mode 100644 index cb36183..0000000 --- a/Dockerfile.linux.amd64 +++ /dev/null @@ -1,32 +0,0 @@ -FROM python:3.7-alpine - -LABEL maintainer="Robert Kaussow " \ - org.label-schema.name="ansible later" \ - org.label-schema.vcs-url="https://gitea.rknet.org/docker/molecule" \ - org.label-schema.vendor="Robert Kaussow" \ - org.label-schema.schema-version="1.0" - -ENV PACKAGES="\ - gcc \ - make \ - libffi-dev \ - openssl-dev \ - python-dev \ - libc-dev \ -" - -ENV PIP_PACKAGES="\ - ansible~=2.8.0 \ - ansible-later~=0.2.0 \ -" - -RUN \ - apk update \ - && apk add --update --no-cache ${PACKAGES} \ - && rm -rf /var/cache/apk/* \ - && pip install --upgrade --no-cache-dir pip \ - && pip install --no-cache-dir ${PIP_PACKAGES} \ - && rm -rf /root/.cache/ - -USER root -ENTRYPOINT ["/usr/local/bin/ansible-later"] diff --git a/Dockerfile.linux.arm32v6 b/Dockerfile.linux.arm32v6 deleted file mode 100644 index cb36183..0000000 --- a/Dockerfile.linux.arm32v6 +++ /dev/null @@ -1,32 +0,0 @@ -FROM python:3.7-alpine - -LABEL maintainer="Robert Kaussow " \ - org.label-schema.name="ansible later" \ - org.label-schema.vcs-url="https://gitea.rknet.org/docker/molecule" \ - org.label-schema.vendor="Robert Kaussow" \ - org.label-schema.schema-version="1.0" - -ENV PACKAGES="\ - gcc \ - make \ - libffi-dev \ - openssl-dev \ - python-dev \ - libc-dev \ -" - -ENV PIP_PACKAGES="\ - ansible~=2.8.0 \ - ansible-later~=0.2.0 \ -" - -RUN \ - apk update \ - && apk add --update --no-cache ${PACKAGES} \ - && rm -rf /var/cache/apk/* \ - && pip install --upgrade --no-cache-dir pip \ - && pip install --no-cache-dir ${PIP_PACKAGES} \ - && rm -rf /root/.cache/ - -USER root -ENTRYPOINT ["/usr/local/bin/ansible-later"] diff --git a/Dockerfile.linux.arm64v8 b/Dockerfile.linux.arm64v8 deleted file mode 100644 index cb36183..0000000 --- a/Dockerfile.linux.arm64v8 +++ /dev/null @@ -1,32 +0,0 @@ -FROM python:3.7-alpine - -LABEL maintainer="Robert Kaussow " \ - org.label-schema.name="ansible later" \ - org.label-schema.vcs-url="https://gitea.rknet.org/docker/molecule" \ - org.label-schema.vendor="Robert Kaussow" \ - org.label-schema.schema-version="1.0" - -ENV PACKAGES="\ - gcc \ - make \ - libffi-dev \ - openssl-dev \ - python-dev \ - libc-dev \ -" - -ENV PIP_PACKAGES="\ - ansible~=2.8.0 \ - ansible-later~=0.2.0 \ -" - -RUN \ - apk update \ - && apk add --update --no-cache ${PACKAGES} \ - && rm -rf /var/cache/apk/* \ - && pip install --upgrade --no-cache-dir pip \ - && pip install --no-cache-dir ${PIP_PACKAGES} \ - && rm -rf /root/.cache/ - -USER root -ENTRYPOINT ["/usr/local/bin/ansible-later"]