-
Notifications
You must be signed in to change notification settings - Fork 230
[tests-only][full-ci] Test: run wopi suite in k8s #11870
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
base: master
Are you sure you want to change the base?
Conversation
9f0c580 to
7624c85
Compare
6a83848 to
2140441
Compare
4358f96 to
d8b142d
Compare
d8b142d to
8a68e18
Compare
.drone.star
Outdated
| "export KUBECONFIG=%s/kubeconfig-$${DRONE_BUILD_NUMBER}.yaml" % dirs["base"], | ||
| "until test -f $${KUBECONFIG}; do sleep 1; done", | ||
| ] + getWopiPortForwardCommands() + [ | ||
| "sleep 5", | ||
| "kubectl -n ocis wait --for=condition=ready pod -l app=appregistry --timeout=60s", | ||
| "kubectl -n ocis exec $(kubectl -n ocis get pod -l app=appregistry -o jsonpath='{.items[0].metadata.name}') -- test -f /etc/ocis/app-registry.yaml && echo 'Config file exists' || (echo 'Config file missing'; exit 1)", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we do not need these commands here. this is a wrong place. 😅
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is causing the unit test pipeline to run infinitely
| def getWopiPortForwardCommands(): | ||
| """Get port forwarding commands for WOPI collaboration services""" | ||
| return [ | ||
| "bash -lc 'command -v kubectl >/dev/null || (curl -fsSL -o /usr/local/bin/kubectl https://dl.k8s.io/release/v1.27.3/bin/linux/amd64/kubectl && chmod +x /usr/local/bin/kubectl) || true'", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you do that in two places, and the version is hard-coded in two places. If one day someone wants to change the version number, chances are big that only one will be changed and that will lead to a lot of debugging time wasted
| "sed -i 's|name: sharing-banned-passwords-{{ .appName }}|name: sharing-banned-passwords|' ./charts/ocis/templates/frontend/deployment.yaml", | ||
| # Add OCIS_CONFIG_DIR env var to appregistry deployment | ||
| "grep -q 'name: OCIS_CONFIG_DIR' ./charts/ocis/templates/appregistry/deployment.yaml || " + | ||
| "cat > /tmp/patch_appregistry.py << 'EOF'" + "\n" + |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I find it super confusing if the file is created here and then executed.
I think usually we save these kind of tools in a separate files and then execute them.
Or what about even not patching the deployment files, but just having a separate deployment.yaml that is already pre-patched?
| json.dump(data, f, indent=2) | ||
| PYEOF""" | ||
|
|
||
| def injectWopiConfig(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we need a different solution here. Finding or changing something in that endless awk line is 🤯
8a68e18 to
561a029
Compare
561a029 to
fb8c653
Compare
|



Description
Key Changes
1. CI Pipeline Configuration (.drone.star)
"k8s": Trueand"skip": Falsefor the wopi test configuration targeting theapiCollaborationsuite"collaborationServiceNeeded": Trueto ensure WOPI services are deployed2. WOPI Configuration and Setup
getWopiPortForwardCommands()for exposing collaboration services on localhost ports (9300, 9302, 9304, 9305)3. Feature File Corrections
4. Kubernetes Infrastructure
5. Test Environment Setup
Technical Details
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: