12 Commits

Author SHA1 Message Date
Monty Taylor
a033a0804b Validate that we can upload build collection
Run galaxy-importer on the built artifact and fail if galaxy is
going to fail.

Remove license_file entry in galaxy.yml

Change-Id: I6c2ac22ccb56f52f8efcefc5891b10875ae8c0b5
2020-05-19 11:13:22 -05:00
Monty Taylor
6ab290839b Rename routing.yml to runtime.yml
The collection routing implementation for 2.10:

   https://github.com/ansible/ansible/pull/67684

just update the filename to be meta/runtime.yml.

Change-Id: I858f53e66bef2c40fb7ec2821d412bd966417106
2020-05-16 07:43:29 -05:00
Sagi Shnaidman
bcdf749938 Improve ansible-test sanity for collection
Check only things we build into collection.
Ignore sanity files from full CI jobs.
Add queens to gate because it's voting.
Add files to ignoring when building collection.
Remove non-required lines from ignorign sanity files.

Change-Id: I0dde756efa133cf75b67d072af78a1f8307ce932
2020-05-13 13:31:29 +03:00
Monty Taylor
52905480b8 Remove all of the os_ prefixes
The 2.10 transition has a routing.yml file that points each
individual module from ansible/ansible to a new location. That means
we can put:

    os_server:
      redirect: openstack.cloud.server

into lib/ansible/config/routing.yml in ansible/ansible and have
the result be the end user's playbooks still working with the
old names while providing new names that are less ugly.

This adds a routing file to our collection repo, as well as the
script used to generate the new mapping.

Change-Id: Ia5d18282b14ad0d86a347343be8bb477ae47130a
2020-05-12 10:19:28 -05:00
Monty Taylor
6271268567 Run linters in a temp dir instead of an install
We can't run linters in an install because installs expand
symlinks to regular files so the ansible-test code that detects
symlinks can't work so it looks at docs for symlink aliases
as if they were real.

Change-Id: I0a5659a1f693261a21a5b29528f950b846205f2e
2020-05-12 09:04:54 +00:00
Monty Taylor
852f385889 Remove MANIFEST.json before building
For reasons surpassing understanding this doesn't seem to get
overwritten.

Change-Id: Ib4d6b38757112908dbf58d70015482831a8c2e95
2020-03-13 10:14:58 -05:00
Monty Taylor
97eb24ac4d Deal with collection build modifying tree
ansible-galaxy collection build modifies the contents of the tree.
Let's not go in to why this is bad, but instead just deal with it.
The issue in question is that is removes the +x bit from files in
the tree, which means you can't run a build twice in a row locally.
Shrug. Just roll with the -x and update our usage to reflect it.

Change-Id: I0f82531e99a98d656b60079fd3e94d4e3a1dbb6b
2020-03-05 15:08:32 +00:00
Monty Taylor
96a5914eb6 Remove from __future__ lines
We only support python3

Change-Id: Ieb82eb3369c4ac73f3595dc84ca11e1f11766a79
2020-03-01 06:26:03 -06:00
Monty Taylor
9d29e8c847 Fix H236 and remove exclusion
We haven't needed this in a VERY long time.

Change-Id: I35041c2c6ae421e7caaef3c04ffca92e2ff10e35
2020-03-01 06:22:58 -06:00
Monty Taylor
4df2fdb4fe Just use shutil.rmtree in build.py
Turns out there's a stdlib function for this.

Change-Id: I38885c4b6d973b2a7083a04acb3f5cea9ad78ad9
2020-03-01 06:17:35 -06:00
Monty Taylor
40fe366727 Remove old artifacts when building new ones
For local dev, multiple iterations can wind up with multiple
files in the build_artifact dir. Remove them when building so
that the ls command works.

Change-Id: Id309c34679d2c0b6d9380665a381af4b52495d19
2020-02-27 13:56:27 -06:00
Monty Taylor
5936a8f691 Add a tool to build collections with pbr
OpenStack in general uses git tags to drive versioning of artifacts.
This is important because of our code review driven workflow, since
patches don't necessarily land in a predictable sequence, so flows
requiring a version number in a file to be updated at a specific
time are problematic.

By having pbr generate the correct version number then putting that
into the galaxy.yml file, we can match the behavior without too much
undue burden.

Also ignore build_artifact directory.

Change-Id: Id02fee682fb5a4b6fd6dcb0644848e6d1269e19b
2020-02-27 08:20:43 -06:00