| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
1 | THIS DOCUMENT IS PUBLIC, DON'T INCLUDE ANY SENSITIVE/CONFIDENTIAL INFORMATION. | |||||
2 | Feature | Checklist | Owner | Status | Bug Link | Comments / Resolution |
3 | Note: This is a template please refer to the copied test plan in the test issue. (delete note at creation) | |||||
4 | During Blackout Tests that run during the Blackout are high priority. These are the areas that needs to be validated before we cross the point of no return (rollback of migration) | |||||
5 | Repository Operations | SSH | @mkozono - Michael K | Untested | ||
6 | Forking | @mkozono - Michael K | Untested | |||
7 | Access existing LFS object | @mkozono - Michael K | Untested | |||
8 | Create new LFS object | @mkozono - Michael K | Untested | |||
9 | Uploads | Access existing upload | @reprazent - Bob V | Untested | ||
10 | Create new upload | @reprazent - Bob V | Untested | |||
11 | Artifacts | Access existing artifacts | @reprazent - Bob V | Untested | ||
12 | Create new artifacts (use an extension that's not .txt or .html otherwise it redirects to Pages) | @reprazent - Bob V | Untested | |||
13 | Basic API tests | Using session cookie to access API: once logged-in, visit https://staging.gitlab.com/api/v4/user | @rymai - Rémy C | Untested | ||
14 | Some basic validation for Webhooks | Add new webhooks: create a project and then webhook using https://webhook.site | @rymai - Rémy C | Untested | ||
15 | Test the webhook in the GitLab interface | @rymai - Rémy C | Untested | |||
16 | Issue boards | Create a list on group issue board | @meks - Mek S | Untested | ||
17 | Create a list on project issue board | @meks - Mek S | Untested | |||
18 | AlertManager Alerts | AlertManager | @dawsmith - Dave S | Untested | ||
19 | Pages | Access existing Pages: https://jarv.staging.gitlab.io/pages-test/ | @toon - Toon C | Untested | ||
20 | After Blackout Tests that run after the Blackout covers functionality that can be addressed after we are on GCP. | |||||
21 | Issue boards | Move issue between lists on group issue board | @meks - Mek S | Untested | ||
22 | Scope a group issue board | @meks - Mek S | Untested | |||
23 | Move issue between lists on project issue board | @meks - Mek S | Untested | |||
24 | Scope a project issue board | @meks - Mek S | Untested | |||
25 | CI/CD Workflow (Basic flow) | Coverage: project templates, k8s integration, registry, Auto DevOps standard flow | ||||
26 | Setup: - Create a new project based on the Rails template - Create a new k8s cluster on GKE using the GitLab interface - Install helm, ingress, prometheus - Enable Auto DevOps and configure the domain At this point, a pipeline will be executed automatically. | @bikebilly - Fabio B | Untested | |||
27 | All the jobs in the pipeline succeeded | @bikebilly - Fabio B | Untested | |||
28 | Default page is visible at the given url for production | @bikebilly - Fabio B | Untested | |||
29 | Performances metrics are shown | @bikebilly - Fabio B | Untested | |||
30 | CI/CD Workflow (Advanced flow) | Coverage: private projects, runner integration, staging deployments, incremental rollout deployments, multi-pod deployments, deploy boards, canary deployments, web terminals, deploy tokens | ||||
31 | Setup: - Reuse the same setup for CI/CD Workflow (Basic flow) - Turn project visibility to private - Create a deploy token compatible with Auto DevOps (name -> gitlab-deploy-token) - Install runner on the cluster - Disable shared runners in project settings - Run a new manual pipeline adding the following variables: - STAGING_ENABLED -> 1 - PRODUCTION_REPLICAS -> 10 - INCREMENTAL_ROLLOUT_ENABLED -> 1 - After the staging job ended, trigger the rollout 10% manual action | @bikebilly - Fabio B | Untested | |||
32 | All the jobs in the pipeline succeeded up to the rollout 10% deployment | @bikebilly - Fabio B | Untested | |||
33 | Security reports are available in the related tab of the pipeline | @bikebilly - Fabio B | Untested | |||
34 | Default page is visible at the given url for staging | @bikebilly - Fabio B | Untested | |||
35 | Deploy boards show 1 pod for staging | @bikebilly - Fabio B | Untested | |||
36 | Deploy boards show 1 new pod and 9 old pods for production | @bikebilly - Fabio B | Untested | |||
37 | - Run rollout 100% manual action and wait until it is over | @bikebilly - Fabio B | Untested | |||
38 | Deploy boards show 10 pods after rollout 100% job ended | @bikebilly - Fabio B | Untested | |||
39 | Default page is visible at the given url for production | @bikebilly - Fabio B | Untested | |||
40 | Kubernetes is using the deploy token for registry access | @bikebilly - Fabio B | Untested | |||
41 | - Run a new manual pipeline adding the following variables: - STAGING_ENABLED -> 1 - CANARY_ENABLED -> 1 - After the staging job ended, trigger the canary manual action | @bikebilly - Fabio B | Untested | |||
42 | Deploy boards show 1 canary pod for production | @bikebilly - Fabio B | Untested | |||
43 | - Click on the web terminal button and execute id on the remote shell | @bikebilly - Fabio B | Untested | |||
44 | Check for the output of the id command in the web terminal | @bikebilly - Fabio B | Untested | |||
45 | Github Import for larger projects (performance) | Run github import for https://github.com/guard/guard and document time it takes to finish. Document results in the issue. | @dbalexandre - Douglas B A | Untested | ||
46 | Email (PRODUCTION ONLY) | Incoming emails update notes | @toon - Toon C | Untested | ||
47 | Backups | Redis | @dawsmith - Dave S | Untested | ||
48 | Postgres | @dawsmith - Dave S | Untested | |||
49 | Git Data | @dawsmith - Dave S | Untested | |||
50 | File locking | Lock/Unlock files through the UI | @rdavila - Rubén D | Untested | ||
51 | Lock/Unlock files through | @rdavila - Rubén D | Untested | |||
52 | List locked files through | @rdavila - Rubén D | Untested | |||
53 | CI/CD for GitHub | Add ".gitlab-ci.yml" to a GitHub project Import to GitLab with "CI/CD for external repo" Verify that pipelines run on GitLab in response to changes on GitHub Verify that pull requests on GitHub recieve status updates from pipelines | @jamedjo - James EJ | Untested | ||
54 | Pages | Update existing page | @toon - Toon C | Untested | ||
55 | Create new page | @toon - Toon C | Untested | |||
56 | Test custom domain | @toon - Toon C | Untested | |||
57 | Test custom domain HTTPS | @toon - Toon C | Untested | |||
58 | Mirror (PRODUCTION ONLY) | Push | @vsizov - Valery S | Untested | ||
59 | Pull | @vsizov - Valery S | Untested | |||
60 | Email (PRODUCTION ONLY) | Outgoing notification continue to work from new sending hosts DKIM, SPF | @toon - Toon C | Untested | ||
61 | Create an issue from incoming email - navigate to a project issues index page, click on the link "Email a new issue to this project" to obtain email address, send an email with a subject/text to this email address | @jprovaznik - Jan P | Untested | |||
62 | GitLab Service Desk (PRODUCTION ONLY) | Incoming emails | @stanhu - Stan H | Untested | ||
63 | Performance measurement | Run siege against tne new environment | @ddavison - Dan Davison | Untested | ||