Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ enable shard scheduling and fix e2e tests #2596

Merged

Conversation

sttts
Copy link
Member

@sttts sttts commented Jan 11, 2023

Switching on random scheduling of workspaces to shards.

The current state of e2e tests:

✅ apibinding
✅ audit
✅ authorizer
✅ cache
✅ test/e2e/conformance (@fgiloux sttts#14 - the fix pulled into this PR)
✅ customresourcedefinition
✅ garbagecollector (@p0lyn0mial: Originally reported as red but after running it a few times on my local machine and examining a CI run I moved to green)
✅ homeworkspaces
✅ test/e2e/watchcache (flakes, @p0lyn0mial, fixed by: #2632)
✅ workspacetype
✅ reconciler/apiexport
✅ reconciler/cache (@p0lyn0mial, fixed by: #2620)
✅ test/e2e/reconciler/workspace (@p0lyn0mial, fixed by: #2639)
✅ quota
✅ reconcilder/*
✅ virtual/*

🔴 quota (@ncdc)
🔴 apibinding
🔴 authorizer, flakes (@sur)
⚫ skipped: test/e2e/reconciler/locationworkspace (@p0lyn0mial, temporal fix in #2650)
⚫ skipped: test/e2e/reconciler/scheduling (@p0lyn0mial, temporal fix in #2651)
⚫ skipped: test/e2e/reconciler/cluster (@p0lyn0mial, temporal fix in #2657)
⚫ skipped: test/e2e/recocniler/namespace (@p0lyn0mial, temporal fix in #2658)
⚫ skipped: test/e2e/syncer (@p0lyn0mial, temporal fix in #2652)
🔴 test/e2e/virtual/apiexport (@p0lyn0mial/@sur, opened #2641 but I think that more fixes are required)
🔴 test/e2e/virtual/initializingworkspaces (@p0lyn0mial, opened #2660 but we need more fixes)

some useful commands:

to run apibinding e2e tests against a multi-shard environment:

go test ./test/e2e/apibinding/ -v -p 1 -parallel 1 -v -failfast -count 1 -args --use-default-kcp-server --root-shard-kubeconfig=./.kcp-0/admin.kubeconfig
rm -r .kcp*; go run ./cmd/sharded-test-server --v=4 --number-of-shards=3 --shard-v=4

to run all e2e tests on a multi-shard environment:

rm -rf .kcp .kcp* artifacts; ARTIFACT_DIR=$PWD/artifacts UNSAFE_E2E_HACK_DISABLE_ETCD_FSYNC=true E2E_PARALLELISM=8 COUNT=1 SHARDS=3 make test-e2e-sharded-minimal WHAT=./test/e2e/...

to find out what is replicated into the cache and when:

tail -f .kcp-*/kcp.log | egrep 'replication_reconcile.go'

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 11, 2023
@sttts sttts force-pushed the sttts-random-workspace-scheduling branch from 025560e to ed08ff7 Compare January 12, 2023 13:14
@openshift-ci openshift-ci bot added the kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API label Jan 12, 2023
@sttts sttts force-pushed the sttts-random-workspace-scheduling branch from ed08ff7 to df7ce89 Compare January 12, 2023 17:03
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 12, 2023
@sttts sttts force-pushed the sttts-random-workspace-scheduling branch 3 times, most recently from de413ee to 2b4cc23 Compare January 13, 2023 14:38
@sttts sttts force-pushed the sttts-random-workspace-scheduling branch 2 times, most recently from 15cd60f to 832a4a5 Compare January 14, 2023 20:42
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 14, 2023
@p0lyn0mial p0lyn0mial force-pushed the sttts-random-workspace-scheduling branch from 018c30b to e5ea069 Compare January 17, 2023 11:36
@p0lyn0mial
Copy link
Contributor

/retest

@sttts sttts force-pushed the sttts-random-workspace-scheduling branch from 6c5038c to 8f04da8 Compare January 27, 2023 22:45
@sttts
Copy link
Member Author

sttts commented Jan 28, 2023

/retest

@p0lyn0mial
Copy link
Contributor

ci/prow/e2e-sharded is green!

can we merge this PR?

@p0lyn0mial
Copy link
Contributor

/retest all

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 30, 2023

@p0lyn0mial: The /retest command does not accept any targets.
The following commands are available to trigger required jobs:

  • /test boilerplate
  • /test codegen
  • /test deps
  • /test e2e
  • /test e2e-multiple-runs
  • /test e2e-sharded
  • /test e2e-shared
  • /test images
  • /test imports
  • /test lint
  • /test modules
  • /test test

Use /test all to run all jobs.

In response to this:

/retest all

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@p0lyn0mial
Copy link
Contributor

/test all

@sttts sttts changed the title ✨ working through e2e tests for sharding support ✨ enable shard scheduling and fix e2e tests Jan 30, 2023
@p0lyn0mial
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jan 30, 2023
@sttts
Copy link
Member Author

sttts commented Jan 30, 2023

/approve

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 30, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: sttts

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 30, 2023
@openshift-merge-robot openshift-merge-robot merged commit da4b8d7 into kcp-dev:main Jan 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants