lp://staging/~gnuoy/simplestreams/ksv3
- Get this branch:
- bzr branch lp://staging/~gnuoy/simplestreams/ksv3
Branch merges
- Scott Moser (community): Needs Information
- Server Team CI bot: Needs Fixing (continuous-integration)
-
Diff: 57 lines (+29/-5)1 file modifiedsimplestreams/openstack.py (+29/-5)
Related bugs
Bug #1624306: simplestreams does not support keystone api v3 | Undecided | Fix Committed |
Related blueprints
Branch information
Recent revisions
- 445. By Liam Young
-
Add support for the Keystone v3 API
simplestreams.
openstack is hardcoded for Keystone API v2 client. This change adds
support for Keystone API v3. The version of the API requested is derived from
auth_url and if that fails it falls back to v2.Closes-Bug: Bug #1624306
- 444. By Scott Moser
-
tools/run-flake8: run on all python programs in tools and fix errors
now tools/run-flake8 will run on all python programs in tools
by checking the first line for 'python'. Then, fix all the reported
errors. - 442. By Scott Moser
-
Makefile: use 'any' flake8
this adds 'any' to tools/run-flake8.
It then supports './tools/run-flake8 any' working
* trusty: run 'flake8'
- python3-flake8 Build-Depends gets flake8 command installed
(python3- flake8 Depends on python-flake8 which gives /usr/bin/flake8)
- python3 -m flake8 does not work.
- there is no 'flake8' package
* xenial, yakkety:
- python3-flake8 does not get 'flake8' package
- python3 -m flake8 works.
* tox: we want to use the environment 'python'It was needed in order to run with the command ('flake8') on
trusty - 441. By Scott Moser
-
Makefile: use 'any' flake8
this adds 'any' to tools/run-flake8.
It then supports './tools/run-flake8 any' working
* trusty: run 'flake8'
- python3-flake8 Build-Depends gets flake8 command installed
(python3- flake8 Depends on python-flake8 which gives /usr/bin/flake8)
- python3 -m flake8 does not work.
- there is no 'flake8' package
* xenial, yakkety:
- python3-flake8 does not get 'flake8' package
- python3 -m flake8 works.
* tox: we want to use the environment 'python'It was needed in order to run with the command ('flake8') on
trusty - 440. By Scott Moser
-
add running of tox.
This primarily moves a lot of things around to enable tox.
Some things here:
* add ./tools/install- deps
this allows easily installing dependencies to build or run tox
(the openstack libraries require some c python extentions so
you end up needing python-dev and such in order to run tox).* add tools/create-gpgdir and tools/sign-examples
this just moves that logic out of Makefile to these places.* make tools/js2signed only re-create .sjson and .json.gpg
files if the .json is newer. It supports '--force' to disable
this logic.* move to using flake8 instead of pyflakes and pep8
(flake8 uses pyflakes and pep8)* debian/control drop python-glanceclient and python3-
keystoneclient
these aren't available in trusty and thus can't build if they
are there. Also adjusted tests to skip these if not present.* split signjson_file out of toolutil as toolutil required
distroinfo which is only needed by make testdata.* add a trusty-flake8 tox environment for testing versions
of flake8, pep8, and pyflakes that are on trusty. This allows
us to catch what would be trusty specific build failures in tox. - 439. By Robert C Jennings
-
Update default LTS alias to point to Xenial (lp:1606606 )
Following release of 16.04.1 update simplestream's default LTS alias to
point to Xenial instead of Trusty. LXD exposes the values for image
aliases. - 438. By Scott Moser
-
json2streams: Accept items with no size.
dict_to_item automatically converts size from a string to an int. This
has the side effect of making size mandatory. Size should not be mandatory
for image-ids. - 437. By Robert C Jennings
-
Create chksum for LXD metadata+root for squashfs (LP: #1577922)
This adds a 'combined_
sqashfs_ sha256' element to items that have
both a LXD metadata tar and a squashfs root. Additionally, we
have 'combined_rootxz_ sha256' which wil have the same value as
'combined_sha256' and allow for sunsetting that ambiguous name. - 436. By Scott Moser
-
GlanceMirror: fix a couple of race-related problems
First, what can happen is that .sync() is interrupted for external reasons
(service restarts, network issues,...) after first image has been uploaded
to Glance when syncing multiple images. On re-run, the uploaded image is
considered "synced" already, but since simplestreams index is written out
only at the end of the sync, all the metadata is lost. We solve this by
adding "simplestreams_metadata" as one of the properties of image in
Glance where we put a JSON representation of all the metadata fields from
the original simplestreams index entry. We then load them in
load_products() if they are defined. This results in a slightly different
auto.sync.json entry: "endpoint" and "region" are on the product entry,
instead of on the disk1.img entry.Secondly, if sync is indeed interrupted after one or several images are
completely uploaded (but not all of them), there's no index file at all,
so any attempt to make use of them with juju would fail, even though it
should be fully functional. We solve this by calling "insert_products()"
at the end of the insert_item(). This means that the index is regenerated
after every single image is uploaded.Along the way, I slightly improve insert_item() tests from the pre-req
branch to add a test for minimal data required, rename the existing one
using real world data to test_insert_item_full, and re-use that data for a
test for a newly added call to insert_products().
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp://staging/simplestreams