diff --git a/.drone.yml b/.drone.yml index 544d4a4..e130377 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,286 +1,632 @@ -- kind: pipeline - name: ubuntu-20.04build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: ubuntu-20.04 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: ubuntu-20.04/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: +--- +kind: pipeline +type: kubernetes +name: build-debian + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-ubuntu-20 + image: plugins/kaniko + settings: + dockerfile: ubuntu-20.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - ubuntu-20.04-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-18 + image: plugins/kaniko + settings: + dockerfile: ubuntu-18.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - ubuntu-18.04-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-16 + image: plugins/kaniko + settings: + dockerfile: ubuntu-16.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - ubuntu-16.04-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-14 + image: plugins/kaniko + settings: + dockerfile: ubuntu-14.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - ubuntu-14.04-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-8 + image: plugins/kaniko + settings: + dockerfile: debian-8/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - debian-8-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-9 + image: plugins/kaniko + settings: + dockerfile: debian-9/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - debian-9-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-10 + image: plugins/kaniko + settings: + dockerfile: debian-10/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - debian-10-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: build-rhel + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-fedora-24 + image: plugins/kaniko + settings: + dockerfile: fedora-24/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - fedora-24-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-almalinux-8 + image: plugins/kaniko + settings: + dockerfile: almalinux-8/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - almalinux-8-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-centos-7 + image: plugins/kaniko + settings: + dockerfile: centos-7/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - centos-7-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: build-alpine + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-alpine-3 + image: plugins/kaniko + settings: + dockerfile: alpine-3/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - alpine-3-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: build-arch + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-arch + image: plugins/kaniko + settings: + dockerfile: arch/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - arch-dev + when: + event: + - push + - pull_request + - cron + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: release-debian + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-ubuntu-20-release + image: plugins/kaniko + settings: + dockerfile: ubuntu-20.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - ubuntu-20.04 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: ubuntu-18.04build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: ubuntu-18.04 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: ubuntu-18.04/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-18-release + image: plugins/kaniko + settings: + dockerfile: ubuntu-18.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - ubuntu-18.04 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: ubuntu-14.04build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: ubuntu-14.04 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: ubuntu-14.04/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-16-release + image: plugins/kaniko + settings: + dockerfile: ubuntu-16.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - ubuntu-16.04 + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-ubuntu-14-release + image: plugins/kaniko + settings: + dockerfile: ubuntu-14.04/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - ubuntu-14.04 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: debian-8build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: debian-8 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: debian-8/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-8-release + image: plugins/kaniko + settings: + dockerfile: debian-8/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - debian-8 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: debian-9build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: debian-9 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: debian-9/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-9-release + image: plugins/kaniko + settings: + dockerfile: debian-9/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - debian-9 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: debian-10build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: debian-10 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: debian-10/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-debian-10-release + image: plugins/kaniko + settings: + dockerfile: debian-10/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - debian-10 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: centos-7build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: centos-7 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: centos-7/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: - - centos-7 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: almalinux-8build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: almalinux-8 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: almalinux-8/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: - - almalinux-8 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: fedora-24build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: fedora-24 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: fedora-24/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: release-rhel + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-fedora-24-release + image: plugins/kaniko + settings: + dockerfile: fedora-24/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - fedora-24 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: alpine-3build - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: alpine-3 - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: alpine-3/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-almalinux-8-release + image: plugins/kaniko + settings: + dockerfile: almalinux-8/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - almalinux-8 + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +- name: build-centos-7-release + image: plugins/kaniko + settings: + dockerfile: centos-7/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: + - centos-7 + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: release-alpine + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-alpine-3-release + image: plugins/kaniko + settings: + dockerfile: alpine-3/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - alpine-3 - username: - from_secret: docker_username - when: - - push - - pull_request - - cron - type: kubernetes -- kind: pipeline - name: archbuild - platform: - arch: amd64 - os: linux - steps: - - image: plugins/kaniko - name: arch - resources: - limits: - cpu: "200" - memory: 1024MiB - settings: - dockerfile: arch/Dockerfile - password: - from_secret: docker_password - repo: lerentis/ansible - tags: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: release-arch + +platform: + os: linux + arch: amd64 + +steps: + +- name: build-arch-release + image: plugins/kaniko + settings: + dockerfile: arch/Dockerfile + password: + from_secret: docker_password + username: + from_secret: docker_username + repo: lerentis/ansible + tags: - arch - username: - from_secret: docker_username - when: + when: + event: + - tag + resources: + limits: + cpu: 200 + memory: 1024MiB + +--- +kind: pipeline +type: kubernetes +name: notify-build + +platform: + os: linux + arch: amd64 + +steps: + +- name: notify + image: appleboy/drone-telegram + settings: + message: "Commit {{ commit.message }} ran with build {{ build.number }} and finished with status {{ build.status }}." + to: + from_secret: telegram_userid + token: + from_secret: telegram_secret + when: + status: + - failure + - success + event: - push - pull_request - cron - type: kubernetes +depends_on: + - build-arch + - build-alpine + - build-debian + - build-rhel + +--- +kind: pipeline +type: kubernetes +name: notify-release + +platform: + os: linux + arch: amd64 + +steps: + +- name: notify + image: appleboy/drone-telegram + settings: + message: "Release {{ build.tag }} ran with build {{ build.number }} and finished with status {{ build.status }}." + to: + from_secret: telegram_userid + token: + from_secret: telegram_secret + when: + status: + - failure + - success + event: + - tag + +depends_on: + - release-arch + - release-alpine + - release-debian + - release-rhel \ No newline at end of file