diff mbox

[v4,3/4] .shippable.yml: new CI provider

Message ID 20170216123456.28621-4-alex.bennee@linaro.org
State New
Headers show

Commit Message

Alex Bennée Feb. 16, 2017, 12:34 p.m. UTC
Ostensibly Shippable offers a similar set of services as Travis.
However they are focused on Docker container based work-flows so we
can use our existing containers to run a few extra builds - in this
case a bunch of cross-compiled targets on a Debian multiarch system.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
v3
  - reduce matrix to armhf/arm64 which currently work
  - use the make docker-image-* build stanzas
  - add TARGET_LIST to each build
---
 .shippable.yml | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 .shippable.yml

Comments

Fam Zheng Feb. 16, 2017, 1:31 p.m. UTC | #1
On Thu, 02/16 12:34, Alex Bennée wrote:
> Ostensibly Shippable offers a similar set of services as Travis.
> However they are focused on Docker container based work-flows so we
> can use our existing containers to run a few extra builds - in this
> case a bunch of cross-compiled targets on a Debian multiarch system.

Out of curiosity, what are the forms of build report from shippable service?

> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> 
> ---
> v3
>   - reduce matrix to armhf/arm64 which currently work
>   - use the make docker-image-* build stanzas
>   - add TARGET_LIST to each build
> ---
>  .shippable.yml | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>  create mode 100644 .shippable.yml
> 
> diff --git a/.shippable.yml b/.shippable.yml
> new file mode 100644
> index 0000000000..4de8daf341
> --- /dev/null
> +++ b/.shippable.yml
> @@ -0,0 +1,21 @@
> +language: c
> +env:
> +  matrix:
> +    - IMAGE=debian-armhf-cross
> +      TARGET_LIST=arm-softmmu,arm-linux-user
> +    - IMAGE=debian-arm64-cross
> +      TARGET_LIST=aarch64-softmmu,aarch64-linux-user
> +    - IMAGE=centos6
> +      TARGET_LIST=i386-softmmu,x86_64-softmmu
> +build:
> +  pre_ci:
> +    - make docker-image-${IMAGE}
> +  pre_ci_boot:
> +    image_name: qemu
> +    image_tag: ${IMAGE}
> +    pull: false
> +    options: "-e HOME=/root"
> +  ci:
> +    - unset CC
> +    - ./configure ${QEMU_CONFIGURE_OPTS} --target-list=${TARGET_LIST}
> +    - make -j2

It's a good surprise that our docker infrastructure fits in the shippable
framework pretty nicely. :)

Looks good to me without cross checking the shippable API:

Reviewed-by: Fam Zheng <famz@redhat.com>
Alex Bennée Feb. 16, 2017, 7:40 p.m. UTC | #2
Fam Zheng <famz@redhat.com> writes:

> On Thu, 02/16 12:34, Alex Bennée wrote:
>> Ostensibly Shippable offers a similar set of services as Travis.
>> However they are focused on Docker container based work-flows so we
>> can use our existing containers to run a few extra builds - in this
>> case a bunch of cross-compiled targets on a Debian multiarch system.
>
> Out of curiosity, what are the forms of build report from shippable
> service?

It sends out emails and there is the web status page:

https://app.shippable.com/runs/58a596c4266ed80f003a9385/summary

There is also support for build badges a.la Travis.

>
>>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>
>> ---
>> v3
>>   - reduce matrix to armhf/arm64 which currently work
>>   - use the make docker-image-* build stanzas
>>   - add TARGET_LIST to each build
>> ---
>>  .shippable.yml | 21 +++++++++++++++++++++
>>  1 file changed, 21 insertions(+)
>>  create mode 100644 .shippable.yml
>>
>> diff --git a/.shippable.yml b/.shippable.yml
>> new file mode 100644
>> index 0000000000..4de8daf341
>> --- /dev/null
>> +++ b/.shippable.yml
>> @@ -0,0 +1,21 @@
>> +language: c
>> +env:
>> +  matrix:
>> +    - IMAGE=debian-armhf-cross
>> +      TARGET_LIST=arm-softmmu,arm-linux-user
>> +    - IMAGE=debian-arm64-cross
>> +      TARGET_LIST=aarch64-softmmu,aarch64-linux-user
>> +    - IMAGE=centos6
>> +      TARGET_LIST=i386-softmmu,x86_64-softmmu
>> +build:
>> +  pre_ci:
>> +    - make docker-image-${IMAGE}
>> +  pre_ci_boot:
>> +    image_name: qemu
>> +    image_tag: ${IMAGE}
>> +    pull: false
>> +    options: "-e HOME=/root"
>> +  ci:
>> +    - unset CC
>> +    - ./configure ${QEMU_CONFIGURE_OPTS} --target-list=${TARGET_LIST}
>> +    - make -j2
>
> It's a good surprise that our docker infrastructure fits in the shippable
> framework pretty nicely. :)
>
> Looks good to me without cross checking the shippable API:
>
> Reviewed-by: Fam Zheng <famz@redhat.com>


--
Alex Bennée
diff mbox

Patch

diff --git a/.shippable.yml b/.shippable.yml
new file mode 100644
index 0000000000..4de8daf341
--- /dev/null
+++ b/.shippable.yml
@@ -0,0 +1,21 @@ 
+language: c
+env:
+  matrix:
+    - IMAGE=debian-armhf-cross
+      TARGET_LIST=arm-softmmu,arm-linux-user
+    - IMAGE=debian-arm64-cross
+      TARGET_LIST=aarch64-softmmu,aarch64-linux-user
+    - IMAGE=centos6
+      TARGET_LIST=i386-softmmu,x86_64-softmmu
+build:
+  pre_ci:
+    - make docker-image-${IMAGE}
+  pre_ci_boot:
+    image_name: qemu
+    image_tag: ${IMAGE}
+    pull: false
+    options: "-e HOME=/root"
+  ci:
+    - unset CC
+    - ./configure ${QEMU_CONFIGURE_OPTS} --target-list=${TARGET_LIST}
+    - make -j2