Sandor Zeestraten
2018-02-27 21:44:46 UTC
Hey Juju folks,
I feel like I'm hitting some rough spots while setting up a simple pipeline
which pushes a charm build to the edge channel using the charm store CLI.
The last Juju Show (#30) talked about macaroon support in libjuju and CI
which sounds great, but that seems to be aimed at those using libjuju
and/or JAAS controllers.
Here are some of the steps for a new project:
* Create a launchpad team for a namespace in the charm store
- Fair enough
* Create a launchpad CI user/bot and add it project so we can push to the
store without using personal credentials
- This feels like a hack and rather insecure. Why not use limited
deploy/API keys? https://github.com/juju/charmstore/issues/776
* Manually login to launchpad with the CI user in order to activate it in
the charm store
- This gotcha took me a few moments to figure out.
https://jujucharms.com/docs/stable/authors-charm-store#the-juju-charm-store
* Manually login to the charm store with the CI user with `charm login` to
create a token.
- Had to find this bug, https://github.com/juju/c
harmstore-client/issues/61, after I figured out that `charm login` did not
have a non-interactive way to authenticate
- This is still not document anywhere as far as I can tell.
https://github.com/juju/charmstore-client/issues/145
- According to the comments in #61 it needs to be updated periodically
- I've seen another approach using expect, https://lists.ubuntu.c
om/archives/juju/2017-November/009691.html, but that seems like a
workaround too
* Encrypt and deploy token to a specific directory in CI in order for
`charm login` to work
- Again, https://github.com/juju/charmstore-client/issues/61 and
https://github.com/juju/charmstore-client/issues/145
* Mess around with `charm push` and `charm release` in order to push charm
to the edge channel
- This involves dealing with revisions which feels rather unnecessary
- See https://github.com/juju/charmstore-client/issues/135 and
https://github.com/juju/charmstore-client/issues/146
* Celebrate with your favourite beverage
How are you all interacting with the charm store with your charm CI?
Am I missing some obvious steps which would simplify things?
Is anyone working on proper deploy/API keys for the charm store?
Cheers
--
Sandor Zeestraten
I feel like I'm hitting some rough spots while setting up a simple pipeline
which pushes a charm build to the edge channel using the charm store CLI.
The last Juju Show (#30) talked about macaroon support in libjuju and CI
which sounds great, but that seems to be aimed at those using libjuju
and/or JAAS controllers.
Here are some of the steps for a new project:
* Create a launchpad team for a namespace in the charm store
- Fair enough
* Create a launchpad CI user/bot and add it project so we can push to the
store without using personal credentials
- This feels like a hack and rather insecure. Why not use limited
deploy/API keys? https://github.com/juju/charmstore/issues/776
* Manually login to launchpad with the CI user in order to activate it in
the charm store
- This gotcha took me a few moments to figure out.
https://jujucharms.com/docs/stable/authors-charm-store#the-juju-charm-store
* Manually login to the charm store with the CI user with `charm login` to
create a token.
- Had to find this bug, https://github.com/juju/c
harmstore-client/issues/61, after I figured out that `charm login` did not
have a non-interactive way to authenticate
- This is still not document anywhere as far as I can tell.
https://github.com/juju/charmstore-client/issues/145
- According to the comments in #61 it needs to be updated periodically
- I've seen another approach using expect, https://lists.ubuntu.c
om/archives/juju/2017-November/009691.html, but that seems like a
workaround too
* Encrypt and deploy token to a specific directory in CI in order for
`charm login` to work
- Again, https://github.com/juju/charmstore-client/issues/61 and
https://github.com/juju/charmstore-client/issues/145
* Mess around with `charm push` and `charm release` in order to push charm
to the edge channel
- This involves dealing with revisions which feels rather unnecessary
- See https://github.com/juju/charmstore-client/issues/135 and
https://github.com/juju/charmstore-client/issues/146
* Celebrate with your favourite beverage
How are you all interacting with the charm store with your charm CI?
Am I missing some obvious steps which would simplify things?
Is anyone working on proper deploy/API keys for the charm store?
Cheers
--
Sandor Zeestraten