mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Unflatmap community.general (#5461)
* Move files. * Update imports and references. * Move wrongly placed files. * Reverse redirects, deprecate long → short name redirects. * Simplify contribution guidelines for new modules. * Rewrite BOTMETA. * Add changelog fragment. * Fix ignore.txt files.
This commit is contained in:
parent
2b0bebc8fc
commit
b531ecdc9b
1033 changed files with 4802 additions and 1989 deletions
834
.github/BOTMETA.yml
vendored
834
.github/BOTMETA.yml
vendored
File diff suppressed because it is too large
Load diff
|
@ -112,19 +112,9 @@ Creating new modules and plugins requires a bit more work than other Pull Reques
|
||||||
- Make sure that new plugins and modules have tests (unit tests, integration tests, or both); it is preferable to have some tests
|
- Make sure that new plugins and modules have tests (unit tests, integration tests, or both); it is preferable to have some tests
|
||||||
which run in CI.
|
which run in CI.
|
||||||
|
|
||||||
4. For modules and action plugins, make sure to create your module/plugin in the correct subdirectory, and add a redirect entry
|
4. Action plugins need to be accompanied by a module, even if the module file only contains documentation
|
||||||
in `meta/runtime.yml`. For example, for the `aerospike_migrations` module located in
|
(`DOCUMENTATION`, `EXAMPLES` and `RETURN`). The module must have the same name and directory path in `plugins/modules/`
|
||||||
`plugins/modules/database/aerospike/aerospike_migrations.py`, you need to create the following entry:
|
than the action plugin has in `plugins/action/`.
|
||||||
```.yaml
|
|
||||||
aerospike_migrations:
|
|
||||||
redirect: community.general.database.aerospike.aerospike_migrations
|
|
||||||
```
|
|
||||||
Here, the relative path `database/aerospike/` is inserted into the module's FQCN (Fully Qualified Collection Name) after the
|
|
||||||
collection's name and before the module's name. This must not be done for other plugin types but modules and action plugins!
|
|
||||||
|
|
||||||
- Action plugins need to be accompanied by a module, even if the module file only contains documentation
|
|
||||||
(`DOCUMENTATION`, `EXAMPLES` and `RETURN`). The module must have the same name and directory path in `plugins/modules/`
|
|
||||||
than the action plugin has in `plugins/action/`.
|
|
||||||
|
|
||||||
5. Make sure to add a BOTMETA entry for your new module/plugin in `.github/BOTMETA.yml`. Search for other plugins/modules in the
|
5. Make sure to add a BOTMETA entry for your new module/plugin in `.github/BOTMETA.yml`. Search for other plugins/modules in the
|
||||||
same directory to see how entries could look. You should list all authors either as `maintainers` or under `ignore`. People
|
same directory to see how entries could look. You should list all authors either as `maintainers` or under `ignore`. People
|
||||||
|
|
8
changelogs/fragments/unflatmap.yml
Normal file
8
changelogs/fragments/unflatmap.yml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
major_changes:
|
||||||
|
- "The internal structure of the collection was changed for modules and action plugins.
|
||||||
|
These no longer live in a directory hierarchy ordered by topic, but instead are now all in a single (flat) directory.
|
||||||
|
This has no impact on users *assuming they did not use internal FQCNs*. These will still work, but result in deprecation warnings.
|
||||||
|
They were never officially supported and thus the redirects are kept as a courtsey, and this is not labelled as a breaking change.
|
||||||
|
Note that for example the Ansible VScode plugin started recommending these internal names. If you followed its recommendation,
|
||||||
|
you will now have to change back to the short names to avoid deprecation warnings, and potential errors in the future as
|
||||||
|
these redirects will be removed in community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5461)."
|
5069
meta/runtime.yml
5069
meta/runtime.yml
File diff suppressed because it is too large
Load diff
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue