Commit graph

50 commits

Author SHA1 Message Date
Toshio Kuratomi
5f227fe260 Install ansible-test (#60718)
* Install ansible-test

Modify the install script to install ansible-test and its supporting
code.  Alternative to #60701 that doesn't change package_dir ansible for
fear that it might regress https://github.com/ansible/ansible/issues/10437

Also:
* No longer use package_data.  Everything in the package dirs is going
  to be installed.  Anything that shouldn't be installed needs to be
  moved elsewhere.
* modify the algorithm to store symlinks which are in the same tree
  instead of same directory

* Add ansible_test files to package-data sanity test

* MANIFEST.in cleanups

* Add lib/ansible/config/*.yml
* Make most things in code directories (lib/ansible and test/lib/ansible_test/)
  use explicit file extensions instead of wildcards for maintainability
* Exclude common file extensions that we don't want included in the code
  directories

* Change package-data test to be more complete

* Now compares the repository, sdist, and install
* Compares both that everything in the sdist is in the repo and
  everything in the install is in the sdist in addition to comparing that
  everything in the repo that we want is in the install

* Leave out test artifacts

Only include the directory structure for test/results and test/cache not
any files that may have been generated by test runs

Remove test/utils files from the sdist as these are only needed for our CI

cleanup of docs in MANIFEST.in; getting rid of build files.

* Add the ability to output sdist and snapshot to specific directory

* Add a warning about modifying the heuristic to setup.py

* Address generated files

* Use make snapshot instead of sdist to generate changelog and man pages
  and make sure they're included
* Ignore both the test/utils and generated test files (results, cache)
* Deal with Python3 __pycache__ byte code caches
* Don't check documentation, that isn't built for the sdist
* Restructure for clarity

* Add cli web docs to make clean

This was causing problems when attempting to test that the sdist didn't
have extra files

* Fix bug constructing python names from __pycache__ names

* Create a clean repo to work from

* Exclude test/legacy and be more explicit on extensions

* Exclude the legacy directory from sdist
2019-08-20 23:53:35 -07:00
Matt Clay
5f67b5a757 Move ansible-test coverage config to test/lib/ 2019-08-07 18:32:46 -07:00
Matt Clay
18867847f4
Split up "code smell" sanity tests. (#60174)
* Relocate ansible-only sanity tests.

* Get "code smell" sanity tests from multiple dirs.

- `test/lib/ansible_test/_data/sanity/code-smell/` - General purpose tests used for both Ansible and Ansible Collections.
- `test/sanity/code-smell/` - Tests specific to Ansible, will not be used for Ansible Collections.
2019-08-06 17:17:57 -07:00
Matt Clay
d651bda123
Relocate ansible-test code. (#60147)
* Initial move of `test/runner/` content.

`test/runner/lib/` -> `test/lib/ansible_test/_internal/`
`test/runner/`     -> `test/lib/ansible_test/_internal/data/`

* Initial move of `test/sanity/` content.

`test/sanity/` -> `test/lib/ansible_test/_internal/data/sanity/` (except `test/sanity/ignore.txt`)

* Initial move of `test/units/pytest/` content.

`test/units/pytest/` -> `test/lib/ansible_test/_internal/data/pytest/`

* Follow-up move of `test/runner/unit/` content.

`test/lib/ansible_test/_internal/data/unit/` -> `test/lib/ansible_test/tests/unit/`

* Initial move of `ansible.cfg` content.

`test/units/ansible.cfg` -> `test/lib/ansible_test/_internal/data/units/ansible.cfg`
`test/env/ansible.cfg` -> `test/lib/ansible_test/_internal/data/env/ansible.cfg`

* Follow-up move of `data` directory.

`test/lib/ansible_test/_internal/data/` -> `test/lib/ansible_test/_data/`

* Update import statements.

* Add missing __init__.py for unit tests.

* Fix path references and miscellaneous issues.
2019-08-06 14:43:29 -07:00
Matt Clay
c0c17a3031 Remove obsolete tox.ini. (#59963)
Update botmeta
2019-08-02 09:34:21 -04:00
Toshio Kuratomi
33d2728879 Rename python files in hacking/ directory to have .py suffix
ansible-test only passes files which have the .py suffix for sanity
tests on python files.  This change will allow sanity tests to run on
the Python files in hacking/

* Rename test-module to test-module.py
* Symlink test-module for backwards compat since end users may be using
  test-module
* Fix test-module sanity errors that are now triggered
* Rename ansible_profile to ansible-profile.py
* Rename build-ansible
2019-07-10 22:17:35 -07:00
Toshio Kuratomi
3161a91d7e
Implement a framework for having common code for release scripts (#55893)
* Implement a framework for having common code for release scripts

* Release scripts will go through hacking/build-ansible.  build-ansible is
  a pluggable script which will set a directory that has common code for
  non-enduser scripts.  It will then invoke the plugin which implements
  that subcommand.  Uses straight.plugin for loading each sub-command.

* We're going to add tools which are needed to test ansible (the changelog
  generation, for instance) so we need to include the pieces relevant to
  that in the tarball.

* Add straight.plugin to the sanity test requirements for the same
  reason

* Skip compile test just for build-ansible plugins which won't be run as
  part of sanity tests.
2019-05-01 13:57:03 -05:00
Matt Clay
cbb49f66ec
Update MANIFEST.in (#46502)
* Update MANIFEST.in:

- Remove unnecessary prune.
- Include files needed by tests.
- Exclude botmeta sanity test.

These changes permit sanity tests to pass on sdist output.
2018-10-08 12:55:24 -07:00
Jordan Borean
e972287c35 win_exec: refactor PS exec runner (#45334)
* win_exec: refactor PS exec runner

* more changes for PSCore compatibility

* made some changes based on the recent review

* split up module exec scripts for smaller payload

* removed C# module support to focus on just error msg improvement

* cleaned up c# test classifier code
2018-10-02 15:55:53 -07:00
Matt Davis
6d3a1786cc fix MANIFEST.in to include CHANGELOG stub for devel 2018-05-30 17:40:50 -07:00
Matt Davis
e4edb2842a 2.6 changelog gen/version/root dir cleanup (#40421)
* patched in changelog gen stuff from stable-2.5
* Makefile updates
* release.py as single-source-of-truth
* Remove obsolete ansible-core-sitemap.xml file.
* Move ROADMAP.rst into README.rst.
* dynamic rpm changelog, zap old deb/rpm changelogs
* fix changelog in MANIFEST.in
* Remove obsolete hacking/update.sh script.
* Remove ref to deleted authors script.
* Remove ref to removed module-formatter script.
* Update headings to match script names.
* MANIFEST.in cleanup
* removed RELEASES.txt and versions.yml
* removed obsolete release generation playbook/bits (not used since 2.5)
* misc Makefile cleanup
* speculative changes to DEB versioning
* allow override of DEB_VERSION/DEB_RELEASE
2018-05-21 16:14:53 -07:00
Stephen Weber
7afa34ae8a Convert README from Markdown to ReStructured Text and use as longdesc (#22330)
* Convert README from Markdown to ReStructured Text and use as longdesc

Discussion in #13758 led to deciding to switch README to rst and having
setup.py consume it as the long_description.

* Fix long string in setup.py for pep8 compliance

* Open README.rst as read-only

* Update usages of root README.md to README.rst

Unsure about the file ./packaging/debian/docs as it (only) contains the
text README.md. I believe it's referencing ./packaging/debian/README.md
but maybe someone who knows debian packaging could review it?

* Pick up fixes that had been merged into README.md after the initial conversion to rst
2018-04-06 12:38:40 -07:00
Toshio Kuratomi
301e8b8fe8 Include licenses in the tarball (#35855) 2018-02-07 10:35:45 -08:00
Matt Davis
dae8857d3d powershell setup fixes (#27516)
* fixes #27374
* recursively include top 2 levels of .psm1's under module_utils/powershell
* recursively include top 2 levels of .ps1's under modules/windows (for future restructuring)
2017-07-31 12:16:26 -07:00
Frederic Lepied
9f13951d1b include .psm1 files in MANIFEST (#27286) 2017-07-26 07:46:05 +10:00
Toshio Kuratomi
eff757eeb8 Maintain symlinks in setup.py sdist, build, and install commands (#27149)
* Maintain symlinks in setup.py sdist, build, and install commands

Symlinks are meaningful for ansible modules.  They differentiate between
aliases and deprecated modules.  They're also useful for saving space
and where downstream patches should be applied to the bin scripts.

Fixes #27105

* Add a fallback for install and build to try to cache symlinks on their own

Needed when someone tries to invoke setup.py build or setup.py install
directly from the source checkout without an intermediate sdist.
2017-07-24 09:25:12 -07:00
Matt Clay
38eed2dab0 Include .yamllint in manifest so yamllint works. 2017-04-12 10:59:52 -07:00
Toshio Kuratomi
0d2d17ade5 Add .coveragerc to the tarball so unittests will run from the tarball 2017-04-12 08:07:34 -07:00
Brian Coca
864cafbf5e removed non existing entries 2017-03-28 22:56:30 -04:00
Toshio Kuratomi
d7b7cbac1a Move to using a requirements.txt to install the python packages. (#21430)
Move to using a requirements.txt to install the python packages.

This makes it easy to keep the documentation and actual package
dependencies in sync.

Fixes #18453
2017-02-15 06:58:09 -08:00
Evgeni Golov
f928696b5d include all docs and tests in the sdist (#20004)
also don't prune packaging (it is included later) and v2 (it does not exist)

Fixes: #19769
2017-01-10 13:30:33 -08:00
Brian Coca
57f8b791d6 consolidated docs
point to new doc locations
removed non existing dirs
2017-01-06 09:16:59 -05:00
Ryan S. Brown
a65f1a5c25 Remove the ignore rules from MANIFEST.in for modules-core/extras repos 2016-12-22 16:03:33 -08:00
sebastianneubauer
2c33f5a12b added galaxy data
not tested, but something like this seems to be missing in the Manifest.in
2016-01-12 16:22:01 +01:00
Brian Coca
e2ad4fe910 include all packaging in tarball
not juse rpm spec file
2015-12-13 00:34:23 -05:00
Toshio Kuratomi
3677a32bee Add changelog to the tarball 2015-10-28 07:57:04 -07:00
Toshio Kuratomi
1d7b493db3 Fix inclusion of the dynamic inventory scripts 2015-09-08 09:51:58 -07:00
James Cammarata
373830b5df Fix removal of .git from modules directories
Also changed the setup.py maintainers email to our default support one.

Fixes #11051
2015-07-13 15:46:09 -04:00
Brian Coca
ebeb0b0348 removed plugins dir that was removed 2015-07-10 10:30:52 -04:00
Brian Coca
42357f7f2a moved contrib into manifest from setup.py 2015-07-10 10:30:33 -04:00
Toshio Kuratomi
04e37cce35 Add and subtract some things from the tarball 2015-03-06 21:02:40 -08:00
Michael DeHaan
2c364a1d4c prune vs exclude 2014-11-27 20:07:24 -05:00
Michael DeHaan
466fa8b3d8 Make sure .git history doesn't show up in distribution 2014-11-27 19:53:37 -05:00
James Laska
a0fecd6101 Fix packaging to work with new module location
Changes include:
 * Remove references to old module dir from .spec
 * Use setuptools find_packages find all ansible packages
2014-09-29 10:22:15 -04:00
Michael DeHaan
ae2d198342 Remove install references to library/ 2014-09-29 08:46:35 -04:00
Michael DeHaan
e5116d2f9b changes for package loading of modules 2014-09-26 11:25:56 -04:00
James Cammarata
4bf826f514 Include *.ps1 files in the library for installation
Fixes #8490
2014-08-07 11:17:13 -05:00
James Cammarata
52c7d50f1e Merge pull request #6824 from sivel/make-rpm-from-release
Allow 'make rpm' work from a release tarball
2014-06-23 13:04:51 -05:00
Michael DeHaan
627ff30a6f Add module replacer capability for powershell files. 2014-06-17 12:30:34 -05:00
Matt Martz
728ecb0804 Allow make rpm to work from a release tarball 2014-04-02 14:17:31 -05:00
Tim Bielawa
6d9e873724 Add some docs/examples
Add a basic ansible-pull man page.

Add the example playbooks/scripts to the RPM package.

Closes #841
2012-08-14 13:05:44 -04:00
Michael DeHaan
62fbbf7653 config file support 2012-08-13 19:17:59 -04:00
Tim Bielawa
029d86be2f Include license file in MANIFEST.in. Fixes #284 2012-05-01 10:34:36 -04:00
Michael DeHaan
f72114c657 Move setup.py stuff back to top level as "make sdist" was not working, plus, it makes sources cleaner. 2012-04-21 11:56:06 -04:00
Tim Bielawa
516df5f64f Move packaging related things out of the root directory:
Distutils MANIFEST.in, setup.py -> packaging/distutils/ directory.
2012-04-19 13:50:09 -04:00
Tim Bielawa
2beb6592c7 Update spec file location in MANIFEST.in 2012-04-18 16:41:11 -04:00
Michael DeHaan
3f9f8de031 Update packaging WRT AUTHORS.md 2012-03-26 22:30:48 -04:00
Seth Vidal
3567237dbc modify build/spec file to work on el6 with quasi-broken setup process
remove data_files section from setup.py for some reason or another
2012-03-13 11:08:10 -04:00
Tim Bielawa
dce6074a81 Fixes for better RPM packaging
Spec file installs default example hosts files
Spec file marks the contents of /etc/ansible as %config(noreplace)

Example hosts file now with instructional comments
2012-03-10 16:19:33 -05:00
Seth Vidal
47aa018a84 add MANIFEST.in, ansible.spec, modify setup.py for rpm pkg creation 2012-03-05 12:15:24 -05:00