Opened the ticket for CodeQL issues
1 Like
December 13, 2022
- [decko] reviewed/approved 3427 (HStore)
- Zero-downtime next steps
- https://github.com/pulp/pulpcore/pull/3448
- all pulpcore and pulp_file migrations need to be zero-downtime compatible
- all tasks need to be backwards compatible
- AI: review , ggainey added as reviewer
-
3190 (domains)
- discussion ensues
- AI: [gerrod] run all/many plugins’ CI tests against the PR
- who are the SMEs?
- gerrod
- RTFM group?
- gerrod’s presentation makes it possible for everyone to understand
- until we have confident LG2M from confident SMEs, we should maybe release core/3.22 sans domains, then 3.23 w/ this
- core/3.22 discussion around probs caused by merged content-app pr
- affects python and container
- do we revert? wait for a fix? hold off 3.22?
- need to resolve prior to a core/3.22 release
- needs to be fixed/addressed in pulpcore - issue?
- “fixing it” in container/python
- fails at core/3.22 release if older plugins are installed
- what happens if we “fix” this in plugins and backport?
- container tinks this is supportable
- how many active z-streams? (2 for container)
- CI is currently broken because of this problem
- about 1/3 tests in container
- “some” tests broken in python
- reverting the two commits fixes CI - but removes the major drivers for core/3.22 being date-driven
- revert-commit-msg needs to explain WHY we’re reverting
- need to have something in place for core/3.22 and pulp_rpm
- we need to expand on pulpcore’s interface in this area, in a way that plugins can reliably take advantage of it - for core/3.25
- AI: [bmbouter] to open an issue, for this issue
- AI: this needs A LOT of discussion at OpenFloor
December 20, 2022
- “stream” test is really unreliable
- we need to fix this problem, or disable the unreliable tests - they teach us to “ignore red”
- [ipanova] to my knowledge Michal was working on its fix, not trivial
- this https://github.com/pulp/pulpcore/issues/3336 ?
- if it’s not going to happen Soon, then ggainey would like the test disabled for now
- [ipanova] to my knowledge Michal was working on its fix, not trivial
- we need to fix this problem, or disable the unreliable tests - they teach us to “ignore red”
- Upstream high-value tickets, should we prio-list them?
- Why? – Came from user feedback sessions
- not much of a quorum - move to Upcoming again
- FWIW, ggainey and decko in favor
- discussion RE putting more focus on community asks
- treat upstream-community as a formal Stakeholder
- def a good thing
- think about 3-month-planning improvement
- ggainey out 27-DEC - cancel the mtg next week? or appoint a facilitator?
AI: ggainey to cancel next week
- gerrod becomes facilitator for Jan-Feb
- prob should not be “optional” for those months
AI: ggainey to voluntold gerrod
Jan 3, 2023
- “stream” test is really unreliable
- we need to fix this problem, or disable the unreliable tests - they teach us to “ignore red”
- [ipanova] to my knowledge Michal was working on its fix, not trivial
- [team] decided to keep the stream job on and leave this work for Michal, as planned. The bug is sporadic so should not have high impact
- we need to fix this problem, or disable the unreliable tests - they teach us to “ignore red”
- Upstream high-value tickets, should we prio-list them?
- Why? – Came from user feedback sessions
- [team] not ready to work on them yet, leave it to Tasking system SMEs to look into transparently provided tasks args
- [ttereshc] added Mike and Humberto as optional attendees when and if they have some questions or need clarifications on pulp architecture, or pulpcore related topics, which are easier to bring up over a call.
January 10
- review Cheat sheet for the pulpcore release shepherd - HackMD
- [AI] Dennis to bring this up in the deployers meeting
- Galaxy[Bruno] - Add a ContentLabel model
- Most likely implement in pulp_ansible for now, hard to be generic enough for all plugins
- Could eventually replace AnsibleCollectionDeprecated
- Should probably be similar in implementation to pulp_container Tags
- ContentMark is favorite name
- issues with pulp-in-one-container image https://github.com/pulp/pulpcore/issues/3492
- Dennis to continue following up with poster on the issue
January 17
- [lmjachky] Features in tech preview: Features in tech preview
- [dkliban] - Update on the pulpcore release steps doc: Cheat sheet for the pulpcore release shepherd - HackMD
- Need some location to store this doc, dkliban to update pulpcore docs
- FYI the zero downtime docs are merged, FYI for anyone making migrations and/or task signature changes
- Zero downtime upgrade docs for plugin writers by bmbouter · Pull Request #3448 · pulp/pulpcore · GitHub
- Want to continue experiment of having plugins really think about the migrations they are writing
January 24
- [dkliban] to update pulpcore release docs to include OCI images release information
- Filed a priority-list issue for this: https://github.com/pulp/pulpcore/issues/3514
- Pulp replica discussion
- fun with repo-attached Distributions and auto-publish
January 31
- [gerrod] (Prio-listable?) Exposing user task dispatcher: Logging which user started a task - #3 by bmbouter
- Can/should we get a pulp_file 1.12 released?
- 1.11.0 happened 2022-07-28
- 4 new features, agreed to release
- interesting authZ resources
- https://storage.googleapis.com/pub-tools-public-publication-data/pdf/10683a8987dbf0c6d4edcafb9b4f05cc9de5974a.pdf
- https://github.com/authzed/spicedb
- Related: Can one impose as a group and make that group owner of the tasks and objects created?
February 14
-
Faster release schedule (and no more waiting on blockers) is needed if we want our cloud deployment downstreams to not deploy from the main branch.
- Are migrations guaranteed to be stable between adding to main and releasing?
- We could defer merging PRs with migrations until later in the cycle?
- Might not be a later phase if we are releasing faster. Need to review faster
- Goal is to release often so we don’t run into a scenario where we want to release a plugin that is waiting on a pulpcore release
- Cloud services might end up using pulpcore from main anyway
- But they may also consume pulp as a library from only ga versions.
- Cloud services might end up using pulpcore from main anyway
- Release every week?
- Y release if features present, else will be a z-stream release
- What about bugfixes? How does this impact backporting?
- Could be a backport nightmare, need to have unofficial LTS versions that we get products to share
- Need to choose a new larger future compatible pulpcore version for plugins to declare compatibility with, maybe 10 versions: 3.35?
- Potentially change pulpcore versioning to date base format?
- [AI] dkliban to write a discourse post discussing how many new versions we want to declare future compatibility against
-
[lmjachky] Review of https://github.com/pulp/pulpcore/issues/3429
- Again, my take on this is that we can mark almost all of the features in tech preview as production ready NOW.
-
Features in tech preview
- Based on the comments, we have direct feedback from users who request features. Why do we need analytics first in order to mark the features as production ready?
-
Let’s use merge queues for Pulpcore
- Pull request merge queue (public beta) | GitHub Changelog
- Maybe test in a plugin or wait a couple more weeks since feature is in beta
-
Stream runner (analysis)
- [mpysik] Review https://github.com/pulp/pulpcore/issues/3336
- Discuss a solution based on the observed data
- [mpysik] Review https://github.com/pulp/pulpcore/issues/3336
-
Replication PR
- https://github.com/pulp/pulpcore/pull/3568
- Didn’t get to, will revisit next week
February 21, 2023
- [dkliban] Posted to discourse about future of pulpcore version compatibility
- Switching Pulpcore to Calendar Versioning scheme - #8 by x9c4
- Lots of discussion, no agreement so far
- Replication PR
- https://github.com/pulp/pulpcore/pull/3568
- not draft anymore
- 2 features still needed:
- dealing with protected content
- auto-adding contentguard on the receiving system
- having multiple upstream-pulp-configs (handling multiple domains)
- dealing with protected content
- release current as tech-preview
- stays tech-prev until the 2 features above are released, then rmv tech-prev
- do we really need to do something specific for multi-domain upstream?
- can we just have a multi-domain POP?
- investigation needed
- Pulp Domains Ready for Review
- Discussion around GCP support
- Adding more test runners that run on Azure cloud
February 28, 2023
- Upgrading Django, 4.2 (LTS) is coming in April
- 3.2 upstream support is till Dec 1, 2023.
- Seems it goes till Apr, 2024. https://www.djangoproject.com/download
- Any known changes which affect us?
- AAP is asking for 4.1 even now, pushing back to wait for 4.2
- With django 4.* and django-channels, we may be able to consolidate the codebase (sync and async parts) on django.
- Do migrations break with this change?
- SUMMARY: We want to switch to 4.2 as soon as possible. Pulpcore 3.25 is the best opportunity. If we find FTE, someone should experiment with 4.1 asap.
- [AI DKliban] Look for an issue; add it to 3.25 blockers.
- [AI DKliban] advertise the Django change on Discourse.
- 3.2 upstream support is till Dec 1, 2023.
- crazy idea time: Can we turn Upload into a content type?
- Chunks are really “just” artifacts.
- We’d get orphan cleanup for free.
- One less type of object to store in the storage bucket.
- [AI MDellweg] Write a story
- Open Telemetry update
- Do we want this to be feature flagged?
- YES
- How do you want it turned on/off?
- Question of deployment
- Should it be on-by-default?
- Can we make it an optional dependency?
- [AI BBouters] Present <= 10’ about telemetry
- Do we want this to be feature flagged?
- What is the process to add metrics to analytics?
- We should document the process around the proposal process in the docs somwhere.
- The process is there to collect deails around sanitizing and getting feedback from a privacy-protection perspective.
- We have an RFE from Ansible folks https://github.com/pulp/analytics.pulpproject.org/issues/82
1 Like
March 7, 2023
- Can we get a Pulp/Katello Integration Mtg representative to cover dkliban’s leave?
- ggainey is It
- [AI] ggainey to suggest every-other-week for this mtg
- core/3.23 - release when?
- domains PR almost merged - today
- pulp-cli/glue will have a release
- then pulpcore
- then pulp_file
- calVer recap
- current thinking: let’s just release faster and not switch to calver right now
- not possible anyway before 3.25
- Next breaking change Release after 3.25?
- We will need to declare the next 3.Y plugin API breaking change release
- https://pastebin.com/raw/y4jNx1BM
- https://pastebin.com/raw/d5mnQi88
- 15 (‘minimum of a quarter’)?> 20?
- need to have a decision made as part of the 3.25 release process
- We will need to declare the next 3.Y plugin API breaking change release
- Analytics proposal
1 Like
March 14, 2023
-
release core/3.23 today?
- yes please!
- AI: ggainey to turn the release crank today
-
moved some AIs from dkliban/bmbouter to decko (lucky man)
-
opentelemetry scope-of-work discussion
- upstream user-interest/conversations
- talk to decko if you want to be involved
- developers
- Scope of Work
- Develop and merge OTEL instrumentation in pulpcore
- code-changes only in pulpcore-workers
- autoinstrumenting handling Other Parts (wsgi, aiohttp, postgres)
- Write user-facing pulpcore documentation on how to configure metrics and tracing
- Ensure oci-env has a profile that fully sets up prometheus, jaeger, grafana, and collector
- Record 5-minute demo showing metrics collection with Grafana and Prometheus (pulp-administrator-facing)
- Record 5-minute demo showing tracing with Jaeger (developer-facing)
- demos need to be sent to youtube-admin and then publicized
- Develop and merge OTEL instrumentation in pulpcore
- upstream user-interest/conversations
-
open telemetry performance update
- “a span took around 1/10000s and 1.8k memory on average”
- https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1556#issuecomment-1458550924
-
open telemetry dependency for pulp
- would include the various autoinstrumentation pkgs (postgres, redis, wsgi, etc) and utilities
- prob ~10ish new pkgs
- decision needs to be made on whether pulp requires these “always” or “optionally”
- needs discussion and decision
- even if deps are present, maybe env-var to turn on/off?
- is operator interested?
- yes - primarily worker-metrics, for scaling decisions
- kubernetes envs will handle scaling-due-to-hardware-issues (ie, CPU-utilization)
-
Can this be reviewed/merged before 3.23 release?
-
What about this one:
-
observation/evaluation of https://analytics.pulpproject.org/ status
- discussion around understanding why so many “old” core-versions
- should/can we think about which “downstream” is reporting analytics?
- lots of discussion around how to interpret results
2 Likes
March 21, 2023
- Can we delete all the nightly published bindings from pypi and rubygem?
- I do not see any way they are useful.
- There are a lot.
- At best they are compatible with a specific commit per day.
- AI: [ggainey] bring up at katello integration mtg
- AI: [somebody] PyPi/rubygem.org needs to be cleaned up
- AI: [somebody] get quba42 access to pulp_deb & pulp-cli-deb & pulp-glue-deb on pypi
- AI: [bmbouter]
- We need to bump the pulpcore version in pulp_file (and pulp-certguard) and perform a backport/release
- as part of CI-update: https://github.com/pulp/pulp_file/pull/897
- certguard tests unhappy w/ domains
- also (as its own issue) https://github.com/pulp/pulp_file/issues/917
- also (as part of Replication) : Adds PulpFileReplicator by dkliban · Pull Request #910 · pulp/pulp_file · GitHub
- pick one of the above to do this in
- let pull/910 Do The Deed
- pulp-certguard
- do we really need to up the lower-bound?
- probably not, doesn’t really “have to be”
- no need to update 1.6 to requiring core/3.23
- certguard lower-bound does need an update (still at 3.10?)
- as part of CI-update: https://github.com/pulp/pulp_file/pull/897
- please review + merge + release this PR for pulp_file
- an ask from @bmbouter to allow upstream testing of the 3.23 replication feature
- file/1.13 and lower-bounds
- create a PR by hand to update release branch
- yank 1.13.0 from pypi/rubygem
- discussion around PyPI permissions
- Fun!
- why is decko not marked as a “Developer” on discourse? Let’s fix!
- CI Update is stuck on certguard tests not being domain compatible
- domains-and-certguard-tests doesn’t work currently
- certguard isn’t pytest-style tests yet
- let’s separate concerns - do 2 CI changes
- discussion: should we be shipping tests in the pypi installs?
- prob not “expected” behavior
- currently we do
- originally done to support django-unit-tests (which expect things to be part of the app)
- want tests to be runnable in pulp-users’ integration CIs
- discussion around Django/4 investigation
- discussion around pulling together an Official List of who has access to what/clean house
1 Like
March 28, 2023
- Do we want to run the test suite in the release pipeline?
- we run it before merging every commit
- thoughts: we want faster releases, and we can always put this back if it starts causing us issues
- AI: [mdellweg] remove it
- Do we want to run the lowerbounds CI check with == or ~= pins?
- https://github.com/pulp/plugin_template/blob/b83f4e7b1a0754c1f0ae357fa5b0022425421553/templates/github/.ci/scripts/calc_deps_lowerbounds.py.j2#L18
- we often declare the pulpcore’s requirement as pulpcore>=3.21,<3.25; the CI goes for 3.21.0
- should we install pulpcore v3.21.5 (the latest Z release) instead?
- we have found a lowerbounds-compat-issue w/ the current behavior
- plugin is compatible but tests started failing
- decision: accept less-strict pins only on pulp-controlled components
- Can we raise the lower bound (Z version) of a requirement in a plugin when releasing a bug fix?
- pulpcore Z version bump when releasing a plugin
- regression testing assessment (problems with accepting bug fixes)
- More friendly docs needed for certguard?
- https://github.com/pulp/pulp-certguard/issues/224
- AI: [ggainey] Adding pointers to How Certs Work is a good idea, add commentary to issue
- Are we ready to stop publishing anything nightly?
- we don’t publish clients any more, do publish docs
- docs updated at release-time
- changelog updated when that file changes
- w/out nightly-docs, need to point into github directly (which is ok)
- what is generating /latest/ ?
- need to make sure that works first
- AI: [mdellweg] investigate and stop doing nightly-publish if we can
1 Like
April 4, 2023
- Django 4.2 released
- Possibility to upgrade to Psycopg3
- ASGI vs WSGI
- decko is working on OTEL
- Must to line up with 3.25, and “before August” to meet a stakeholder ask
- Make Postgres/12+ required as well
- do we have a prio-list issue?
- x9c4 to pick up the work?
- When to release z-streams
- If there’s anything unreleased on a Tuesday, Push The Button
- Release pulpcore?
- only z-releases
- Release pulp_file?
- pytest plugin PR needs a release
- release 1.14 to get PulpReplicator out
1 Like
April 11
- Circular CI testing dependencies
- https://github.com/pulp/pulp_file/pull/943
- new feature breaks existing test - so core tests fail until pulp_file merge happens
- revisit “all pulp_file tests must live in pulp_file”?
- in pulpcore-PR, reference which git-commit to install pulp_file to show tests work
- at merge time, revert
- make test be version-dependent/aware?
- do a pulp-file z-stream w/ JUST updated test?
- AI: [any] review/merge/backport pulp_file PR
- AI: [ggainey] get a 1.14.z released to unblock gerrod
- should pulpcore/pulp_file be in The Same Project?
- def needs its own discussion
- see https://github.com/pulp/pulpcore/blob/main/docs/contributing/git.rst#requiring-other-pull-requests for current doc
- List endpoint optimizations
- https://github.com/pulp/pulpcore/issues/3711
- https://github.com/pulp/pulpcore/issues/3714
- memoizes pulp-type lookup to make a MAJOR performance gain
- wait for requests to backport - but Do It!
- AI: [ggainey] bring up to katello in nxt integration-mtg
- [ggainey] pulpcore z-releases today
- 3.23.2, 3.22.4, 3.21.7, 3.18.17, 3.16.17
- let ggainey know if he should wait, before noon-GMT-5 today
- [decko] pulp-maven permissions
- need github perms to at least re-run actions
- same as merge-pull-request perms
- who has access? - ttereshc to fix
- AI: [ggainey] update our permissions-matrix so we have some idea of who can do what, where
1 Like
April 18
- Weekly release check-in
- pulpcore
- [ ] 3.24
- [X] 3.23
- [ ] 3.22
- [ ] 3.21
- [ ] 3.18
- [ ] 3.16
- pulp_file
- [X] 1.14
- pulpcore
- Django 4.2 updates
- https://github.com/pulp/pulpcore/pull/3735
- https://github.com/pulp/pulpcore/pull/3751
- not-to-merge until after core/3.24 released
- plugins will need to test against 3735 “soon”
- move from Twitter to mastodon? (fosstodon.org maybe?)
- AI: [ggainey] bring up at Team mtg next week
-
https://github.com/pulp/pulpcore/issues/3710 needs discussion
- Labels? - not available at repo-version level
- maybe start w/ Labels, and see how far we can get?
- AH/repo-mgt - already talked about repo-group concept?
- Pulp2 had something like
- What about repo-version being a piece of content that could be held by a repository? (RepoCeption!)
- need a content-object that is-a repo-version?
- plugin implications?
- Labels? - not available at repo-version level
- Docs issue in plugin CI’s
- plugin docs-build (pulp_file for sure)
- we install pulp “outside” the container
- conflicts w/ cli/glue, pip-installing, plugin-vs-core docs-requirements conflicts
- have a bandaid in-place(ish) for core
- need some thought on how to fix the problem “appropriately”
- root-cause(ish): plugin-doc-build requires pulpcore-doc-requirements-install, and then plugin-doc-requirements-install, and core can therefore break the plugins w/out knowing
- AI: [mdellweg] to investigate better workaround in template
- AI: [ggainey] report back on any breakage in today’s pulp_file release (attempt)
1 Like
April 25
- 3.24 release when?
- Any more features that would need to go in? If not, we should release now and just have extra time for 3.25, the breaking changes release.
- DB Key rotation (not a need).
- https://github.com/pulp/pulpcore/pull/3765
- Not a blocker, but PR is ready
- Hide distributions field (not a need)
- https://github.com/pulp/pulpcore/issues/3538
- Not a blocker
- DB Key rotation (not a need).
- https://github.com/pulp/pulpcore/issues/3023 is The Blocker
- AI: [ggainey] go/nogo for 3.24
- Fri 28-APR
- Any more features that would need to go in? If not, we should release now and just have extra time for 3.25, the breaking changes release.
2 Likes
[missed posting some minutes, catching up here]
May 2nd
- Weekly release check-in
- pulpcore
- [X] 3.24
- [X] 3.23
- [ ] 3.22
- [ ] 3.21
- [ ] 3.18
- [ ] 3.16
- pulp_file
- [ ] 1.14
- pulpcore
- core/3.24
- can/should we get https://github.com/pulp/pulpcore/pull/3770 reviewed/merged?
- let’s not be hasty
- Let’s nail down what cadence we will use as “number of Y-releases without breaking changes”
- see previous notes Pulpcore team meeting - HackMD
- suggestion: core/3.40 (15 versions post-3.25)
- “probably” six-months-ish
- see how well this works/revisit at that point
- With the new release policy, is it still useful to have tests for new pulpcore features living in pulp_file only?
- In the long run, it does not matter if the tests are in pulpcore or pulp_file.
- “Test should come with the feature” suggests adding them to pulpcore if it’s a pulpcore only change.
- What was the original reason to move tests using pulp_file to the plugin?
- mdellweg’s memory: We had compatibility issues with all the branches moving around. But we fixed that and can now depend on stable pulp_file releases.
- if there is any code-change in pulp_file for a Thing, then its test needs to live in pulp_file
- if there is no pulp_file code-change (e.g., core is adding a Thing that pulp_file gets “for free” due to inheritance), then the test for it “can” live in pulpcore
- this own’t solve the problem - pulp_file changes that require core-changes still collide oddly/badly
- what about fixtures? can you use pulp_file fixtures from inside pulpcore?
- yes if pulp_file is a pytest plugin
- discussion: should core and file be the same project?
May 9
- pulpcore
- [X] 3.25 (NEW)
- [ ] 3.24
- [X] 3.23
- [ ] 3.22
- [ ] 3.21
- [ ] 3.18
- [ ] 3.16
- pulp_file
- [ ] 1.15 (NEW)
- [ ] 1.14
- [ ] 1.13
- [ ] 1.12
- [ ] 1.11
- [ ] 1.10
- Issue discussion
- https://github.com/pulp/pulp_rpm/issues/3134
- add a repo-versions__in
- how can we make this performant?
- filters could use perf-analysis/fixes
- needs a POC to understand implications
- materialized views? (django? or postgres?)
- A proposal from telemetry workgroup
- current state
- Dependencies declared in the pulp-ci-centos build
- Code missing in the pulpcore’s
main
branch. We can’t merge the code if we don’t add the opentelemetry basic stack as a direct dependency onpulpcore
's requirements. - A new PR for OpenTelemetry aiohttp-server instrumentation project.
- needed for pulp-content instrumentation
- pulp-api is in a great spot
- aiohttp is pretty good, but we really want it released upstream to consume
- nothing for tasking yet - phase-2 perhaps?
- Got a oci-env profile for development purposes.
- Still not merged given some instabilities with CI’s docker tests.
- need some help/eyes
- Still not merged given some instabilities with CI’s docker tests.
- The new proposal
- Given the new
pulpcore
release process- “We can undo it later if needed”
- Phase 1
- We want to add a trimmed opentelemetry stack list of dependencies directly into pulpcore.
- opentelemetry-distro[otlp]>=0.38b0,<=0.38b0
- opentelemetry-exporter-otlp-proto-http>=1.17.0,<=1.17.0
- opentelemetry-instrumentation-django>=0.38b0,<=0.38b0
- opentelemetry-instrumentation-wsgi>=0.38b0,<=0.38b0
- We have a PR open for instrumenting pulp-api
- We are about to open a PR for opentelemetry-instrumentation-aiohttp-server
- Will have a PR for instrumenting pulp-content after getting the otel PR merged
- We can release a package with the instrumentator if the PR got stalled for some reason(ex: got no reviewers)
- Or we can add it directly into pulpcore code base(vendor it?)
- We want to add a trimmed opentelemetry stack list of dependencies directly into pulpcore.
- Phase 2
- instrument the workers?
- Any specific pulp related code?
- Given the new
- discussion
- we need to get initial work out for larger use #soon
- what’s the cost to add dependencies?
- “more dependencies”
- performance-overhead even if not using?
- decision:
- merge reqs/PR to pulpcore
- merge otel-work in oci_env
- release as soon as it’s merged (3.25? .26?)
- current state
- difficulty in getting core-PRs reviewed
- think about this for next week’s mtg
- 3.25 Today?
- Can we make a bot or something to tell us when there are un-released commits on our branches
- this would be great!
- maybe a cmd to be run on a local copy of the repo?
- a tues-workflow to check branches and auto-release?
- let’s gather some info and anyone who’s Very Excited about this can start pulling something together
- discussion around drop-trailing-slash PR
- gerrod’s refactoring would make this easier to implement
- do we hold up 3.25 for this, or not
- if we’re going to change this to opt-in, it can happen “whenever”
- decision: remove from blocker-list, release core/3.25
1 Like