Skip to content

Commit

Permalink
test: run e2e-firecracker-short for default pipeline only
Browse files Browse the repository at this point in the history
As many pipelines inherit steps from `default_steps`, take out
`e2e-firecracker-short` from `default_steps`.

`e2e` pipeline only relies on `e2e-docker`.

`integration` pipeline does full firecracker run with `e2e-firecracker`.

`release` pipeline manually pulls in `e2e-firecracker-short` to be on
the safe side.

Signed-off-by: Andrey Smirnov <smirnov.andrey@gmail.com>
  • Loading branch information
smira committed Jul 1, 2020
1 parent 3ae5e0e commit 0778870
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 18 deletions.
72 changes: 60 additions & 12 deletions .drone.yml
Original file line number Diff line number Diff line change
Expand Up @@ -399,7 +399,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -477,6 +477,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -983,7 +986,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -1061,6 +1064,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -1143,7 +1149,10 @@ steps:
- name: dev
path: /dev
depends_on:
- e2e-firecracker-short
- initramfs
- talosctl-linux
- kernel
- push-local

- name: provision-tests-prepare
pull: always
Expand All @@ -1163,7 +1172,9 @@ steps:
- name: dev
path: /dev
depends_on:
- e2e-firecracker-short
- initramfs
- talosctl-linux
- kernel
- push-local

- name: provision-tests-track-0
Expand Down Expand Up @@ -1669,7 +1680,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -1747,6 +1758,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -1841,7 +1855,6 @@ steps:
path: /tmp
depends_on:
- e2e-docker-short
- e2e-firecracker-short

- name: e2e-aws
pull: always
Expand Down Expand Up @@ -2345,7 +2358,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -2423,6 +2436,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -2517,7 +2533,6 @@ steps:
path: /tmp
depends_on:
- e2e-docker-short
- e2e-firecracker-short

- name: e2e-aws
pull: always
Expand Down Expand Up @@ -3049,7 +3064,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -3127,6 +3142,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -3221,7 +3239,6 @@ steps:
path: /tmp
depends_on:
- e2e-docker-short
- e2e-firecracker-short

- name: e2e-aws
pull: always
Expand Down Expand Up @@ -3753,7 +3770,7 @@ steps:
- name: dev
path: /dev
depends_on:
- initramfs
- unit-tests

- name: coverage
image: alpine:3.10
Expand Down Expand Up @@ -3831,6 +3848,9 @@ steps:
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
Expand Down Expand Up @@ -3894,6 +3914,34 @@ steps:
- e2e-docker-short
- e2e-firecracker-short

- name: e2e-firecracker-short
pull: always
image: autonomy/build-container:latest
commands:
- make e2e-firecracker
environment:
FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS: 2000
REGISTRY: registry.ci.svc:5000
SHORT_INTEGRATION_TEST: yes
privileged: true
volumes:
- name: dockersock
path: /var/run
- name: docker
path: /root/.docker/buildx
- name: kube
path: /root/.kube
- name: dev
path: /dev
when:
event:
- pull_request
depends_on:
- initramfs
- talosctl-linux
- kernel
- push-local

- name: iso
pull: always
image: autonomy/build-container:latest
Expand Down Expand Up @@ -4064,6 +4112,6 @@ depends_on:

---
kind: signature
hmac: 6be7dc693eaca8b4e5278a5004ddb9e83d1f9fc6a3c84e92dbf5ce039848bc7c
hmac: 1e74c80b37f4274d13b0d3d755ce6b62385dc221d178ef53f0ecf7242820d906

...
15 changes: 9 additions & 6 deletions hack/drone.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ local setup_ci = {
// encourage alignment between this file and the Makefile, and gives us a
// standardized structure that should make things easier to reason about if we
// know that each step is essentially a Makefile target.
local Step(name, image='', target='', privileged=false, depends_on=[], environment={}, extra_volumes=[]) = {
local Step(name, image='', target='', privileged=false, depends_on=[], environment={}, extra_volumes=[], when={}) = {
local make = if target == '' then std.format('make %s', name) else std.format('make %s', target),

local common_env_vars = {},
Expand All @@ -150,6 +150,7 @@ local Step(name, image='', target='', privileged=false, depends_on=[], environme
environment: common_env_vars + environment,
volumes: volumes.ForStep() + extra_volumes,
depends_on: [x.name for x in depends_on],
when: when,
};

// Pipeline is a way to standardize the creation of pipelines. It supports
Expand Down Expand Up @@ -194,9 +195,9 @@ local image_gcp = Step("image-gcp", depends_on=[image_digital_ocean]);
local image_vmware = Step("image-vmware", depends_on=[image_gcp]);
local push_local = Step("push-local", depends_on=[installer_local, talos_local], target="push", environment={"REGISTRY": local_registry, "DOCKER_LOGIN_ENABLED": "false"} );
local unit_tests = Step("unit-tests", depends_on=[initramfs]);
local unit_tests_race = Step("unit-tests-race", depends_on=[initramfs]);
local unit_tests_race = Step("unit-tests-race", depends_on=[unit_tests]);
local e2e_docker = Step("e2e-docker-short", depends_on=[talos, osctl_linux], target="e2e-docker", environment={"SHORT_INTEGRATION_TEST": "yes"}, extra_volumes=[volumes.tmp.step]);
local e2e_firecracker = Step("e2e-firecracker-short", privileged=true, target="e2e-firecracker", depends_on=[initramfs, osctl_linux, kernel, push_local], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000", "SHORT_INTEGRATION_TEST": "yes"});
local e2e_firecracker = Step("e2e-firecracker-short", privileged=true, target="e2e-firecracker", depends_on=[initramfs, osctl_linux, kernel, push_local], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000", "SHORT_INTEGRATION_TEST": "yes"}, when={event: ['pull_request']});

local coverage = {
name: 'coverage',
Expand Down Expand Up @@ -306,8 +307,8 @@ local default_pipeline = Pipeline('default', default_steps) + default_trigger;

// Full integration pipeline.

local integration_firecracker = Step("e2e-firecracker", privileged=true, depends_on=[e2e_firecracker], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000"});
local integration_provision_tests_prepare = Step("provision-tests-prepare", privileged=true, depends_on=[e2e_firecracker, push_local], environment={"REGISTRY": local_registry});
local integration_firecracker = Step("e2e-firecracker", privileged=true, depends_on=[initramfs, osctl_linux, kernel, push_local], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000"});
local integration_provision_tests_prepare = Step("provision-tests-prepare", privileged=true, depends_on=[initramfs, osctl_linux, kernel, push_local], environment={"REGISTRY": local_registry});
local integration_provision_tests_track_0 = Step("provision-tests-track-0", privileged=true, depends_on=[integration_provision_tests_prepare], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000"});
local integration_provision_tests_track_1 = Step("provision-tests-track-1", privileged=true, depends_on=[integration_provision_tests_prepare], environment={"REGISTRY": local_registry, "FIRECRACKER_GO_SDK_REQUEST_TIMEOUT_MILLISECONDS": "2000"});
local integration_cilium = Step("e2e-cilium-1.8.0", target="e2e-firecracker", privileged=true, depends_on=[integration_firecracker], environment={
Expand Down Expand Up @@ -348,7 +349,7 @@ local creds_env_vars = {
PACKET_AUTH_TOKEN: {from_secret: "packet_auth_token"},
};

local e2e_capi = Step("e2e-capi", depends_on=[e2e_docker, e2e_firecracker], environment=creds_env_vars, extra_volumes=[volumes.tmp.step]);
local e2e_capi = Step("e2e-capi", depends_on=[e2e_docker], environment=creds_env_vars, extra_volumes=[volumes.tmp.step]);
local e2e_aws = Step("e2e-aws", depends_on=[e2e_capi], environment=creds_env_vars, extra_volumes=[volumes.tmp.step]);
local e2e_azure = Step("e2e-azure", depends_on=[e2e_capi], environment=creds_env_vars, extra_volumes=[volumes.tmp.step]);
local e2e_gcp = Step("e2e-gcp", depends_on=[e2e_capi], environment=creds_env_vars, extra_volumes=[volumes.tmp.step]);
Expand Down Expand Up @@ -460,6 +461,7 @@ local release = {
};

local release_steps = default_steps + [
e2e_firecracker,
iso,
boot,
release,
Expand Down Expand Up @@ -509,6 +511,7 @@ local notify_depends_on = {
depends_on: [
default_pipeline.name,
e2e_pipeline.name,
integration_pipeline.name,
conformance_pipeline.name,
nightly_pipeline.name,
release_pipeline.name,
Expand Down

0 comments on commit 0778870

Please sign in to comment.