From accb4919211fa2e9d642cd403e51cd2a65f0b869 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Thu, 28 Mar 2019 21:39:07 +1100 Subject: [PATCH 01/12] Add initial Travis-CI setup --- .travis.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..6e0a9c2 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,15 @@ +dist: xenial + +language: minimal + +branches: + only: + - master + +services: + - docker + +install: true + +script: + - docker build -t lambda-packager:latest . \ No newline at end of file From 7cf3277ae26cdf2fe94d0b29fe00acf392560d73 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 09:11:17 +1100 Subject: [PATCH 02/12] Updated CI to include both images --- .travis.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 6e0a9c2..44af730 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,4 +12,5 @@ services: install: true script: - - docker build -t lambda-packager:latest . \ No newline at end of file + - docker build -t lambda-packager:1 -f al1.Dockerfile . + - docker build -t lambda-packager:2 -f al2.Dockerfile . \ No newline at end of file From 9d5b8608b5e3a0401a0a90d50d0cf38642335154 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 09:48:33 +1100 Subject: [PATCH 03/12] Introduce parallel jobs --- .travis.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 44af730..7648548 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,9 @@ services: install: true -script: - - docker build -t lambda-packager:1 -f al1.Dockerfile . - - docker build -t lambda-packager:2 -f al2.Dockerfile . \ No newline at end of file +jobs: + include: + - script: + - docker build -t lambda-packager:1 -f al1.Dockerfile . + - script: + - docker build -t lambda-packager:2 -f al2.Dockerfile . From 479901c556cfd71bc6f82f81746c3e7d82a5eaee Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 09:52:32 +1100 Subject: [PATCH 04/12] Minor tweaks --- .travis.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7648548..c9f588c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,11 +9,13 @@ branches: services: - docker -install: true +install: skip jobs: include: - - script: - - docker build -t lambda-packager:1 -f al1.Dockerfile . - - script: - - docker build -t lambda-packager:2 -f al2.Dockerfile . + - language: minimal + script: + - docker build -t lambda-packager:1 -f al1.Dockerfile . + - language: minimal + script: + - docker build -t lambda-packager:2 -f al2.Dockerfile . From 024a6bf82ee9a25b4c40e302010ab639f88d02f1 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 10:02:09 +1100 Subject: [PATCH 05/12] Added stages --- .travis.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index c9f588c..f2b31f2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,9 +13,15 @@ install: skip jobs: include: - - language: minimal + - stage: build docker image script: - docker build -t lambda-packager:1 -f al1.Dockerfile . - - language: minimal + - script: - docker build -t lambda-packager:2 -f al2.Dockerfile . + - stage: test docker image + script: + - echo "Testing amazon linux 1 based image" + - + script: + - echo "Testing amazon linux 2 based image" \ No newline at end of file From 09db0a6360e1c962f3c453cf6bf82fb687dbab6b Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 10:29:53 +1100 Subject: [PATCH 06/12] Added test cases --- .travis.yml | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index f2b31f2..a861d9f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,15 +13,33 @@ install: skip jobs: include: - - stage: build docker image + - stage: build docker images script: - - docker build -t lambda-packager:1 -f al1.Dockerfile . + - docker build -t myrmex/lambda-packager:1 -f al1.Dockerfile . - script: - - docker build -t lambda-packager:2 -f al2.Dockerfile . - - stage: test docker image + - docker build -t myrmex/lambda-packager:2 -f al2.Dockerfile . + - stage: verify docker images script: - - echo "Testing amazon linux 1 based image" + - docker image ls myrmex/lambda-packager - script: - - echo "Testing amazon linux 2 based image" \ No newline at end of file + - docker image inspect myrmex/lambda-packager:1 + - + script: + - docker image inspect myrmex/lambda-packager:2 + - stage: test docker images + script: + - mkdir tests/node/node6 + - cp tests/node/package.json tests/node/node6 + - docker run -e RUNTIME=node6 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + - stage: test docker images + script: + - mkdir tests/node/node8 + - cp tests/node/package.json tests/node/node8 + - docker run -e RUNTIME=node8 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + - stage: test docker images + script: + - mkdir tests/node/node10 + - cp tests/node/package.json tests/node/node10 + - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 \ No newline at end of file From 259522c4404153b12fb38b684bc70ca9172d498e Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 10:34:31 +1100 Subject: [PATCH 07/12] Corrected yaml --- .travis.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.travis.yml b/.travis.yml index a861d9f..8af0f11 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,17 +29,17 @@ jobs: script: - docker image inspect myrmex/lambda-packager:2 - stage: test docker images - script: - - mkdir tests/node/node6 - - cp tests/node/package.json tests/node/node6 - - docker run -e RUNTIME=node6 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 - - stage: test docker images - script: - - mkdir tests/node/node8 - - cp tests/node/package.json tests/node/node8 - - docker run -e RUNTIME=node8 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 - - stage: test docker images - script: - - mkdir tests/node/node10 - - cp tests/node/package.json tests/node/node10 - - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 \ No newline at end of file + script: + - mkdir tests/node/node6 + - cp tests/node/package.json tests/node/node6 + - docker run -e RUNTIME=node6 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + - + script: + - mkdir tests/node/node8 + - cp tests/node/package.json tests/node/node8 + - docker run -e RUNTIME=node8 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + - + script: + - mkdir tests/node/node10 + - cp tests/node/package.json tests/node/node10 + - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 \ No newline at end of file From 1cb5277f2f6344e0cfbeedc28b5edaf79da06703 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 10:36:51 +1100 Subject: [PATCH 08/12] Sample node package file to bring in dependencies --- tests/node/package.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 tests/node/package.json diff --git a/tests/node/package.json b/tests/node/package.json new file mode 100644 index 0000000..3e39e88 --- /dev/null +++ b/tests/node/package.json @@ -0,0 +1,5 @@ +{ "dependencies": + { + "aws-sdk": "" + } +} \ No newline at end of file From 17d84c49a146dacb8a00ae5d1eb172486298c238 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 10:45:59 +1100 Subject: [PATCH 09/12] Added python requirements.txt --- tests/python/requirements.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/python/requirements.txt diff --git a/tests/python/requirements.txt b/tests/python/requirements.txt new file mode 100644 index 0000000..1db657b --- /dev/null +++ b/tests/python/requirements.txt @@ -0,0 +1 @@ +boto3 \ No newline at end of file From 2c0188053e32e9271c46563854b9967afe10f251 Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 11:15:54 +1100 Subject: [PATCH 10/12] Added docker image caching and extra tests for python --- .travis.yml | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 8af0f11..b703d45 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,6 +2,10 @@ dist: xenial language: minimal +cache: + directories: + - docker_images + branches: only: - master @@ -11,6 +15,12 @@ services: install: skip +before_install: + - docker load -i docker_images/images.tar || true + +before_cache: + - docker save -o docker_images/images.tar $(docker images -a -q) + jobs: include: - stage: build docker images @@ -42,4 +52,19 @@ jobs: script: - mkdir tests/node/node10 - cp tests/node/package.json tests/node/node10 - - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 \ No newline at end of file + - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 + - + script: + - mkdir tests/python/python2.7 + - cp tests/python/package.json tests/python/python2.7 + - docker run -e RUNTIME=python2.7 -v `pwd`/tests/python/python2.7:/data myrmex/lambda-packager:1 + - + script: + - mkdir tests/python/python3.6 + - cp tests/python/package.json tests/python/python3.6 + - docker run -e RUNTIME=python3.6 -v `pwd`/tests/python/python3.6:/data myrmex/lambda-packager:1 + - + script: + - mkdir tests/python/python3.7 + - cp tests/python/package.json tests/python/python3.7 + - docker run -e RUNTIME=python3.7 -v `pwd`/tests/python/python3.7:/data myrmex/lambda-packager:1 \ No newline at end of file From 9b2329d9520e578f3fd08e7f644ca493c7f49acd Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 11:27:43 +1100 Subject: [PATCH 11/12] Trying a build matrix --- .travis.yml | 87 +++++++++++++++++++++++++++-------------------------- 1 file changed, 44 insertions(+), 43 deletions(-) diff --git a/.travis.yml b/.travis.yml index b703d45..35a863c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,50 +21,51 @@ before_install: before_cache: - docker save -o docker_images/images.tar $(docker images -a -q) +env: + - IMAGE_VERSION=1 + - IMAGE_VERSION=2 + jobs: include: - stage: build docker images script: - - docker build -t myrmex/lambda-packager:1 -f al1.Dockerfile . - - - script: - - docker build -t myrmex/lambda-packager:2 -f al2.Dockerfile . - - stage: verify docker images - script: - - docker image ls myrmex/lambda-packager - - - script: - - docker image inspect myrmex/lambda-packager:1 - - - script: - - docker image inspect myrmex/lambda-packager:2 - - stage: test docker images - script: - - mkdir tests/node/node6 - - cp tests/node/package.json tests/node/node6 - - docker run -e RUNTIME=node6 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 - - - script: - - mkdir tests/node/node8 - - cp tests/node/package.json tests/node/node8 - - docker run -e RUNTIME=node8 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 - - - script: - - mkdir tests/node/node10 - - cp tests/node/package.json tests/node/node10 - - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 - - - script: - - mkdir tests/python/python2.7 - - cp tests/python/package.json tests/python/python2.7 - - docker run -e RUNTIME=python2.7 -v `pwd`/tests/python/python2.7:/data myrmex/lambda-packager:1 - - - script: - - mkdir tests/python/python3.6 - - cp tests/python/package.json tests/python/python3.6 - - docker run -e RUNTIME=python3.6 -v `pwd`/tests/python/python3.6:/data myrmex/lambda-packager:1 - - - script: - - mkdir tests/python/python3.7 - - cp tests/python/package.json tests/python/python3.7 - - docker run -e RUNTIME=python3.7 -v `pwd`/tests/python/python3.7:/data myrmex/lambda-packager:1 \ No newline at end of file + - docker build -t "myrmex/lambda-packager:${IMAGE_VERSION}" -f "al${IMAGE_VERSION}.Dockerfile" . + # - stage: verify docker images + # script: + # - docker image ls myrmex/lambda-packager + # - + # script: + # - docker image inspect myrmex/lambda-packager:1 + # - + # script: + # - docker image inspect myrmex/lambda-packager:2 + # - stage: test docker images + # script: + # - mkdir tests/node/node6 + # - cp tests/node/package.json tests/node/node6 + # - docker run -e RUNTIME=node6 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + # - + # script: + # - mkdir tests/node/node8 + # - cp tests/node/package.json tests/node/node8 + # - docker run -e RUNTIME=node8 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:1 + # - + # script: + # - mkdir tests/node/node10 + # - cp tests/node/package.json tests/node/node10 + # - docker run -e RUNTIME=node10 -v `pwd`/tests/node/node6:/data myrmex/lambda-packager:2 + # - + # script: + # - mkdir tests/python/python2.7 + # - cp tests/python/package.json tests/python/python2.7 + # - docker run -e RUNTIME=python2.7 -v `pwd`/tests/python/python2.7:/data myrmex/lambda-packager:1 + # - + # script: + # - mkdir tests/python/python3.6 + # - cp tests/python/package.json tests/python/python3.6 + # - docker run -e RUNTIME=python3.6 -v `pwd`/tests/python/python3.6:/data myrmex/lambda-packager:1 + # - + # script: + # - mkdir tests/python/python3.7 + # - cp tests/python/package.json tests/python/python3.7 + # - docker run -e RUNTIME=python3.7 -v `pwd`/tests/python/python3.7:/data myrmex/lambda-packager:1 \ No newline at end of file From 44787a21b8c262b2eb0fcaba684b99783f04bbdb Mon Sep 17 00:00:00 2001 From: Cliff Wakefield Date: Tue, 22 Oct 2019 11:37:37 +1100 Subject: [PATCH 12/12] Trying to correct matrix expansion --- .travis.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 35a863c..d8dd294 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,13 +21,17 @@ before_install: before_cache: - docker save -o docker_images/images.tar $(docker images -a -q) +stages: + - build + - test + env: - IMAGE_VERSION=1 - IMAGE_VERSION=2 jobs: include: - - stage: build docker images + - stage: build script: - docker build -t "myrmex/lambda-packager:${IMAGE_VERSION}" -f "al${IMAGE_VERSION}.Dockerfile" . # - stage: verify docker images