core snap is not a defined resource for charms that have other snaps as a resource definition

Bug #1828063 reported by Jeff Hillman
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Etcd Charm
Fix Released
Critical
George Kraft
Grafana Charm
Invalid
Wishlist
Unassigned
Graylog Charm
Fix Released
Critical
Kevin W Monroe
Kubernetes Control Plane Charm
Fix Released
Critical
George Kraft
Kubernetes E2E Test Charm
Fix Released
Critical
George Kraft
Kubernetes Worker Charm
Fix Released
Critical
George Kraft
Prometheus2 charm
Fix Released
Undecided
Kevin W Monroe
vault-charm
Fix Released
Undecided
George Kraft

Bug Description

Several charms require snaps to install their relevant software. For an offline environment, these charms allow for a resource definition so that the local snap location can be specified.

The problem is, all snaps have a prerequesite of the core snap.

This snap is not listed as a resource for any of the current CDK charms that also have snaps as a resource.

This requires some mechanism to "sideload" the core charm. One example of that is to use the juju cloudinit-userdata preruncmd option to wget the core snap and manually install it.

This is not an obvious solution to all end users. There should be a core snap resource definition.

Tags: cpe-onsite

Related branches

Jeff Hillman (jhillman)
summary: core snap is not a defined resource for charms that have other snaps as
- a resource definitions
+ a resource definition
Revision history for this message
George Kraft (cynerva) wrote :
Revision history for this message
Jeff Hillman (jhillman) wrote :

To continue that discussion here...

Stub's point isn't taking into account offline deployments. Offline deployments aren't expecting to have automatic security updates.

And more and more deployments are offline these days, or so it seems.

Revision history for this message
Jeff Hillman (jhillman) wrote :

Field critical applied, and approved by Vinod.

The workaround of sideloading the core charm is inconsistently failing.

Revision history for this message
Jeff Hillman (jhillman) wrote :

This is preventing a customer deployment from completing.

Revision history for this message
George Kraft (cynerva) wrote :

One of our old scripts accomplishes this by using juju scp and juju run[1]. Can you do the same as a temporary workaround?

[1]: https://github.com/juju-solutions/cdk-shrinkwrap/blob/41cee5b906d9f8cb882dbe903ef1e8aa5bbcc962/shrinkwrap.py#L51-L55

Revision history for this message
Jeff Hillman (jhillman) wrote :

If i'm reading it correctly, that script is assuming that the machines are already added, and after it installs the core snap, it then deploys the application.

I'm performing this via a bundle, using the FCE tool. So, hence i'm using cloud-init so that once the machine is up, but before the charm software installs, the core snap is there.

So, I don't think I can use that same method, because the bundle is what is deploying the machines.

Changed in charm-etcd:
importance: Undecided → Critical
status: New → Triaged
Changed in charm-kubernetes-master:
importance: Undecided → Critical
status: New → Triaged
Changed in charm-kubernetes-worker:
importance: Undecided → Critical
status: New → Triaged
no longer affects: charm-easyrsa
no longer affects: charm-canal
no longer affects: charm-flannel
Changed in charm-kubernetes-e2e:
status: New → Triaged
importance: Undecided → Critical
Changed in graylog-charm:
status: New → Triaged
importance: Undecided → Critical
Changed in prometheus2-charm:
status: New → Confirmed
Changed in vault-charm:
status: New → Confirmed
Changed in charm-etcd:
assignee: nobody → George Kraft (cynerva)
Changed in charm-kubernetes-master:
assignee: nobody → George Kraft (cynerva)
Changed in charm-kubernetes-worker:
assignee: nobody → George Kraft (cynerva)
Changed in graylog-charm:
assignee: nobody → George Kraft (cynerva)
Changed in prometheus2-charm:
assignee: nobody → George Kraft (cynerva)
Changed in charm-kubernetes-e2e:
assignee: nobody → George Kraft (cynerva)
Revision history for this message
George Kraft (cynerva) wrote :

I'm actively working on this now.

Revision history for this message
George Kraft (cynerva) wrote :
Changed in graylog-charm:
assignee: George Kraft (cynerva) → Kevin W Monroe (kwmonroe)
Changed in prometheus2-charm:
assignee: George Kraft (cynerva) → Kevin W Monroe (kwmonroe)
George Kraft (cynerva)
Changed in vault-charm:
assignee: nobody → George Kraft (cynerva)
Changed in graylog-charm:
status: Triaged → In Progress
Revision history for this message
George Kraft (cynerva) wrote :
Changed in prometheus2-charm:
status: Confirmed → In Progress
Revision history for this message
George Kraft (cynerva) wrote :

Gerrit code review request for vault:

https://review.opendev.org/#/c/658153/

George Kraft (cynerva)
Changed in charm-etcd:
status: Triaged → In Progress
Changed in charm-kubernetes-master:
status: Triaged → In Progress
Changed in charm-kubernetes-worker:
status: Triaged → In Progress
Changed in vault-charm:
status: Confirmed → In Progress
Revision history for this message
George Kraft (cynerva) wrote :

Fix is available in edge channels of etcd, kubernetes-master, and kubernetes-worker with the following charm revisions:

cs:~containers/etcd-422
cs:~containers/kubernetes-master-668
cs:~containers/kubernetes-worker-529

I'll see about backporting these to stable.

Changed in charm-etcd:
status: In Progress → Fix Committed
Changed in charm-kubernetes-master:
status: In Progress → Fix Committed
Changed in charm-kubernetes-worker:
status: In Progress → Fix Committed
Revision history for this message
George Kraft (cynerva) wrote :
George Kraft (cynerva)
Changed in charm-kubernetes-e2e:
status: Triaged → In Progress
Revision history for this message
George Kraft (cynerva) wrote :
George Kraft (cynerva)
Changed in charm-kubernetes-e2e:
status: In Progress → Fix Committed
Revision history for this message
George Kraft (cynerva) wrote :

Fix for kubernetes-e2e is available in edge with charm revision cs:~containers/kubernetes-e2e-650

Revision history for this message
George Kraft (cynerva) wrote :

For etcd, kubernetes-master, kubernetes-worker, and kubernetes-e2e, we're in the process of getting a hotfix release out to stable. This is a new process for us so it's likely going to take us a few days to work out the kinks, get everything tested, and release it.

Revision history for this message
Kevin W Monroe (kwmonroe) wrote :

Fix for prometheus2 is available with charm revision
cs:prometheus2-9

Changed in prometheus2-charm:
status: In Progress → Fix Committed
George Kraft (cynerva)
Changed in vault-charm:
status: In Progress → Fix Committed
Revision history for this message
George Kraft (cynerva) wrote :

We're still working on a hotfix release for etcd, kubernetes-master, kubernetes-worker, and kubernetes-e2e. Currently working through some issues with the release process. Hopefully soon we'll get a build onto the candidate channels; from there it will probably be another day or two of testing before we can release to stable.

Revision history for this message
George Kraft (cynerva) wrote :

Hotfix releases are currently in candidate channels with the following charm revisions:

cs:~containers/etcd-424
cs:~containers/kubernetes-master-672
cs:~containers/kubernetes-worker-531
cs:~containers/kubernetes-e2e-651

We are still working to get these tested before we can release to stable.

Revision history for this message
George Kraft (cynerva) wrote :

Testing of the CDK charms is currently blocked by network issues in our testing infrastructure. We are working with IS to resolve this as quickly as possible.

Revision history for this message
Kevin W Monroe (kwmonroe) wrote :

Fix for graylog is available with charm revision
cs:graylog-29

Changed in graylog-charm:
status: In Progress → Fix Committed
Changed in prometheus2-charm:
status: Fix Committed → Fix Released
Changed in graylog-charm:
status: Fix Committed → Fix Released
Ryan Beisner (1chb1n)
Changed in vault-charm:
status: Fix Committed → Fix Released
Revision history for this message
George Kraft (cynerva) wrote :

Fixes for all affected charms are now released to stable channels.

Changed in charm-etcd:
status: Fix Committed → Fix Released
Changed in charm-kubernetes-e2e:
status: Fix Committed → Fix Released
Changed in charm-kubernetes-master:
status: Fix Committed → Fix Released
Changed in charm-kubernetes-worker:
status: Fix Committed → Fix Released
Revision history for this message
Jeff Hillman (jhillman) wrote :

Field critical removed

Thanks EVERYONE for all of the effort into getting these resolved and released.

Changed in grafana-charm:
assignee: nobody → Kevin W Monroe (kwmonroe)
status: New → Triaged
Revision history for this message
Xav Paice (xavpaice) wrote :

Still need to have this fixed for Grafana - see https://code.launchpad.net/~graylog-charmers/charm-graylog/+git/graylog-charm/+merge/367201 for an example of the fix.

Changed in charm-grafana:
status: Triaged → Fix Released
status: Fix Released → Triaged
importance: Undecided → Critical
assignee: Kevin W Monroe (kwmonroe) → Xav Paice (xavpaice)
Revision history for this message
Xav Paice (xavpaice) wrote :

Marked grafana as invalid, as the current iteration installs via .deb rather than snap.

Changed in charm-grafana:
status: Triaged → Invalid
assignee: Xav Paice (xavpaice) → nobody
Xav Paice (xavpaice)
Changed in charm-grafana:
importance: Critical → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.