From ddd682a1c4ff874f48f09367908ed7ca0969ede2 Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 14:57:08 +0200 Subject: [PATCH 1/9] add nightly pipeline --- .drone.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/.drone.yml b/.drone.yml index 32b87324d5a..8ac957fd5bb 100644 --- a/.drone.yml +++ b/.drone.yml @@ -82,5 +82,32 @@ trigger: - refs/tags/builder-* - refs/tags/drone-* +depends_on: + - test + +--- +kind: pipeline +name: nightly + +steps: +- name: build + image: arduino/arduino-cli:builder-0.1 + commands: + - goreleaser --snapshot + +- name: upload + image: plugins/s3 + settings: + bucket: arduino-downloads-prod-beagle + access_key: + from_secret: downloads_drone_io_aws_access_key_id + secret_key: + from_secret: downloads_drone_io_aws_secret_access_key + source: dist/* + target: /${DRONE_REPO_NAME}/nightly + +trigger: + cron: [ nightly ] + depends_on: - test \ No newline at end of file From eb8361d9d6afd5bf567d9f6a471b32fb326502b7 Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 15:16:59 +0200 Subject: [PATCH 2/9] change trigger to "nightly" tag push instead of cron that is not supported in drone.io SAAS --- .drone.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.drone.yml b/.drone.yml index 8ac957fd5bb..080a78dcd46 100644 --- a/.drone.yml +++ b/.drone.yml @@ -107,7 +107,16 @@ steps: target: /${DRONE_REPO_NAME}/nightly trigger: - cron: [ nightly ] + event: + # releases are triggered by tags only + - tag + status: + # skip the release if the previous build failed + - success + ref: + include: + # exclude the tags used to build Docker images for drone + - refs/tags/nightly depends_on: - - test \ No newline at end of file + - test From 34f6e4f63b9a8a3a64ccdac8fea6e0622da15036 Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 15:29:28 +0200 Subject: [PATCH 3/9] clean trigger config --- .drone.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.drone.yml b/.drone.yml index 080a78dcd46..acdbc06f1a8 100644 --- a/.drone.yml +++ b/.drone.yml @@ -90,6 +90,12 @@ kind: pipeline name: nightly steps: +- name: fetch + # extra step needed to fetch tags after cloning + image: docker:git + commands: + - git fetch --tags + - name: build image: arduino/arduino-cli:builder-0.1 commands: @@ -107,16 +113,11 @@ steps: target: /${DRONE_REPO_NAME}/nightly trigger: - event: - # releases are triggered by tags only - - tag status: # skip the release if the previous build failed - success ref: - include: - # exclude the tags used to build Docker images for drone - - refs/tags/nightly + - refs/tags/nightly depends_on: - test From 8ef1f8f568e2b14b07beec9f80debd303a03961f Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 15:33:27 +0200 Subject: [PATCH 4/9] add exclude filter for nightly in the release pipeline --- .drone.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.drone.yml b/.drone.yml index acdbc06f1a8..265cc9fbdc2 100644 --- a/.drone.yml +++ b/.drone.yml @@ -81,6 +81,7 @@ trigger: # exclude the tags used to build Docker images for drone - refs/tags/builder-* - refs/tags/drone-* + - refs/tags/nightly depends_on: - test From f2ee60f037479f960c10996b4eafc04964f58d0f Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 16:01:54 +0200 Subject: [PATCH 5/9] remove dist prefix form s3 push key --- .drone.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.drone.yml b/.drone.yml index 265cc9fbdc2..659fe3f3323 100644 --- a/.drone.yml +++ b/.drone.yml @@ -112,6 +112,7 @@ steps: from_secret: downloads_drone_io_aws_secret_access_key source: dist/* target: /${DRONE_REPO_NAME}/nightly + strip_prefix: dist/ trigger: status: From 34a47d3a1adb666980e2e219cd3429c1c04f3108 Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 16:57:04 +0200 Subject: [PATCH 6/9] add build date to snapshot name template --- .goreleaser.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 5abd4f57c8c..c2719deb36e 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -3,7 +3,7 @@ checksum: name_template: 'checksums.txt' snapshot: - name_template: "{{ .Tag }}-next" + name_template: '{{ .Tag }}-{{ time "20060102" }}' changelog: sort: asc @@ -99,4 +99,4 @@ blob: bucket: arduino-downloads-prod-beagle ids: - arduino_cli - folder: "{{ .ProjectName }}" \ No newline at end of file + folder: "{{ .ProjectName }}" From f7f014654cec59f36156d82b21514c54486886ae Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 17:01:23 +0200 Subject: [PATCH 7/9] exclude goreleaser generated config.yml --- .drone.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.drone.yml b/.drone.yml index 659fe3f3323..79ce22500d3 100644 --- a/.drone.yml +++ b/.drone.yml @@ -113,6 +113,8 @@ steps: source: dist/* target: /${DRONE_REPO_NAME}/nightly strip_prefix: dist/ + exclude: + - '**/config.yml' trigger: status: From 566fd6bec5e4d31e0e001346ef18de941d02102f Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 17:17:10 +0200 Subject: [PATCH 8/9] exclude goreleaser generated config.yml hardcoding path --- .drone.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone.yml b/.drone.yml index 79ce22500d3..1c6a48fcdfe 100644 --- a/.drone.yml +++ b/.drone.yml @@ -114,7 +114,7 @@ steps: target: /${DRONE_REPO_NAME}/nightly strip_prefix: dist/ exclude: - - '**/config.yml' + - dist/config.yaml trigger: status: From d0b012150e318fa552a186694e5b84e68d06e3ab Mon Sep 17 00:00:00 2001 From: Roberto Sora Date: Fri, 2 Aug 2019 17:34:13 +0200 Subject: [PATCH 9/9] update checksum template with tag and date prefix --- .goreleaser.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index c2719deb36e..170856c08a1 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,6 +1,6 @@ # Global section checksum: - name_template: 'checksums.txt' + name_template: '{{ .Tag }}-{{ time "20060102" }}-checksums.txt' snapshot: name_template: '{{ .Tag }}-{{ time "20060102" }}'