summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2020-03-24tools: use python3 (#274)Ryan Harper
* tools: use python3 Switch tools/ to use python3 instead of python. At minimum this fixes building deb on python3 only releases like Focal. Applied via shell commands: $ grep 'usr/bin/.*python' tools/* 2>/dev/null | \ grep -v python3 | awk -F':' '{print $1}' | \ xargs -i sed -i -e '0,/python/s/python/python3/' {} * Use /usr/bin/env python3 to be virtualenv friendly
2020-03-17cloudinit: remove six from packaging/tooling (#253)Daniel Watkins
2020-03-12Add Netbsd support (#62)Gonéri Le Bouder
Add support for the NetBSD Operating System. Features in this branch: * Add BSD distro parent class from which NetBSD and FreeBSD can specialize * Add *bsd util functions to cloudinit.net and cloudinit.net.bsd_utils * subclass cloudinit.distro.freebsd.Distro from bsd.Distro * Add new cloudinit.distro.netbsd and cloudinit.net.renderer for netbsd * Add lru_cached util.is_NetBSD functions * Add NetBSD detection for ConfigDrive and NoCloud datasources This branch has been tested with: - NoCloud and OpenStack (with and without config-drive) - NetBSD 8.1. and 9.0 - FreeBSD 11.2 and 12.1 - Python 3.7 only, because of the dependency oncrypt.METHOD_BLOWFISH. This version is available in NetBSD 7, 8 and 9 anyway
2020-03-11Introduce and use of a list of GitHub usernames that have signed CLA (#244)Daniel Watkins
The list so far is partial.
2020-03-10cloudinit: move to pytest for running tests (#211)Daniel Watkins
As the nose docs[0] themselves note, it has been in maintenance mode for the past several years. pytest is an actively developed, featureful and popular alternative that the nose docs themselves recommend. See [1] for more details about the thinking here. (This PR also removes stale tox definitions, instead of modifying them.) [0] https://nose.readthedocs.io/en/latest/ [1] https://lists.launchpad.net/cloud-init/msg00245.html
2020-02-20Update tooling for GitHub-based new releases (#223)Daniel Watkins
* tools/read-version: don't enforce version parity in release branch CI We have a bootstrapping problem with new releases, currently. To take the example of 20.1: the branch that bumps the version fails CI because there is no 20.1 tag for it to use in read-version. Previously, this was solved by creating a tag and pushing it to the cloud-init repo before the commit landed. However, we have GitHub branch protection enabled, so the commit that needs to be tagged is not created until the pull request lands in master. This works around this problem by introducing a very specific check: if we are performing CI for an upstream release branch, we skip the read-version checking that we know will fail. * tools/make-tarball: add --version parameter When using make-tarball as part of a CI build of a new upstream release, the version it determines is inconsistent with the version that other tools determine. Instead of encoding the logic here (as well as in Python elsewhere), we add a parameter to allow us to set it from outside the script. * packages/bddeb: handle missing version_long in new version CI If we're running in CI for a new upstream release, we have to use `version` instead of `version_long` (because we don't yet have the tag required to generate `version_long`).
2020-01-30run-container: use 'test -n' instead of 'test ! -z' (#202)Paride Legovini
Fixes shellcheck warning SC2236.
2020-01-28tools/run-container: drop support for python2 (#192)Paride Legovini
Drop support for specifying an Python interpreter different from python3 from tools/run-container.
2020-01-08lp-to-git-users: adding OddBloke (#159)Daniel Watkins
Mapped from daniel-thewatkins
2020-01-08lp-to-git-users: adding otubo (#135)Eduardo Otubo
Mapped from otubo
2020-01-07lp-to-git-users: adding rjschwei (#158)Robert Schweikert
Mapped from rjschwei
2020-01-07lp-to-git-users: adding andreaf74 (#157)andreaf74
Mapped from afranceschini
2020-01-07lp-to-git-users: adding madhuri-rai07 (#156)Madhuri Kumari
Mapped from madhuri-rai07
2020-01-07lp-to-git-users: adding ask0n (#150)Anton
Mapped from askon
2020-01-06lp-to-git-users: adding karibou (#140)Louis Bouchard
Mapped from louis
2019-12-27lp-to-git-users: adding pa-yourserveradmin-com (#145)Andrew Poltavchenko
Mapped from andreipoltavchenko
2019-12-20Add support for the amazon variant in cloud.cfg.tmpl (#119)Frederick Lefebvre
2019-12-20migrate-lp-user-to-github: ensure Launchpad repo exists (#136)Daniel Watkins
* migrate-lp-user-to-github: remove unused option * migrate-lp-user-to-github: ensure Launchpad repo exists * migrate-lp-user-to-github: typo fix
2019-12-19lp-to-git-users: adding goneri (#133)Gonéri Le Bouder
Mapped from goneri
2019-12-17tools: Detect python to use via env in migrate-lp-user-to-githubAdam Dobrawy
Reduce incosistency and allow use virtualenv for launchpad packages.
2019-12-17lp-to-git-users: adding ad-mAdam Dobrawy
Mapped from adobrawy
2019-12-11ds_identify: if /sys is not available use dmidecode (#42)Igor Galić
On non-Linux systems, `/sys` won't be available. In these cases, we can query `dmidecode(8)` directly. This PR implements a dmi_decode function to query the same fields ds-identify would otherwise read from /sys. This path is taken when /sys isn't present. In addition to adding dmidecode support, non-Linux systems also need to map in virtualization detection as systemd-detect-virt is not present; on FreeBSD, use sysctl kern.vm_guest and provide a mapping[1] between BSD values and those that match with systemd-detect-virt[2]. 1. https://github.com/freebsd/freebsd/blob/master/sys/kern/subr_param.c#L149-L157 2. https://www.freedesktop.org/software/systemd/man/systemd-detect-virt.html LP: #1852442
2019-12-04lp-to-git-users: adding bitfehlerConrad Hoffmann
Mapped from bitfehler
2019-12-04lp-to-git-users: adding AOhassanUbuntu
Mapped from ahosmanmsft
2019-12-04lp-to-git-users: adding fred-lefebvreFrederick Lefebvre
Mapped from fredlefebvre
2019-12-03fix invalid json in tools/.lp-to-git-user (#85)Chad Smith
2019-12-02lp-to-git-users: adding elafontaine (#74)Eric Lafontaine
Mapped from eric-lafontaine1
2019-12-02lp-to-git-users: adding xiaofengw-vmwareXiaofeng Wang
Mapped from xiaofengw
2019-11-26set_passwords: support for FreeBSD (#46)Igor Galić
Allow setting of user passwords on FreeBSD The www/chpasswd utility which we depended on for FreeBSD installations does *not* do the same thing as the equally named Linux utility. For FreeBSD, we now use the pw(8) utility (which can only process one user at a time) Additionally, we abstract expire passwd into a function, and override it in the FreeBSD distro class. Co-Authored-By: Chad Smith <chad.smith@canonical.com>
2019-11-25tools: migrate-lp-user-to-github removes repo_dir if created (#35)Chad Smith
To run: ./tools/migrate-lp-user-to-github LAUCHPAD_USERNAME GITHUB_USERNAME
2019-11-25lp-to-git-users: adding do3meliDominic Schlegel
Mapped from d-info-e
2019-11-20lp-to-git-users: adding PengpengSunPengpeng Sun
Mapped from pengpengs
2019-11-20lp-to-git-users: adding trstringerThomas Stringer
Mapped from trstringer
2019-11-15lp-to-git-users: adding hjensasHarald Jensås
Mapped from harald-jensas
2019-11-13lp-to-git-users: adding igalicIgor Galić
Mapped from i.galic
2019-11-12lp-to-git-users: adding chrisglassChris Glass
Mapped from tribaal
2019-11-12lp-to-git-users: adding larsksLars Kellogg-Stedman
Mapped from larsks
2019-11-10pycodestyle: remove unused local variableRyan Harper
2019-11-08lp-to-git-users: adding parideParide Legovini
Mapped from legovini
2019-11-07lp-to-git-users: adding powersjJoshua Powers
Mapped from powersj
2019-11-07lp-to-git-users: adding blackboxswChad Smith
Mapped from chad.smith
2019-11-07lp-to-git-users: adding raharperRyan Harper
Mapped from raharper
2019-11-07tools: migrate script needs to write tools/.lp-to-git-userChad Smith
Also fix commit message lint
2019-11-06tools: add migrate-lp-user-to-github script to link LP to githubChad Smith
To link a launchpad account name to your github account for licensing accountability each LP user should publish a merge proposal in launchpad with their LP account and a matching merge proposal in github using their github user. Cloud-init will track these usename maps in ./tools/.lp-to-git-user as JSON. Run ./tools/migrate-lp-user-to-github <LP_USERNAME> <GITHUB_USERNAME> to automatically create merge proposals in launchpad and your github account.
2019-10-11Add Support for e24cloud to Ec2 datasource.Scott Moser
e24cloud provides an EC2 compatible datasource. This just identifies their platform based on dmi 'system-vendor' having 'e24cloud'. https://www.e24cloud.com/en/ . Updated chassis typo in zstack unit test docstring. LP: #1696476
2019-10-04Add RbxCloud datasourceAdam Dobrawy
2019-10-01Add support for Arch Linux in render-cloudcfgConrad Hoffmann
 - Detect Arch Linux and set variant accordingly in `system_info()`  - Allow setting render-cloudcfg variant parameter to 'arch'  - Adjust some basic settings for Arch Linux in the cloud.cfg.tmpl The template might need some additional Arch-specific tweaks in the future, but at least for now the generated config works and contains the most relevant modules. Also: - Sort distro variant lists when adding Arch - Add debian to known variants in render-cloudcfg
2019-09-18Add datasource for ZStack platform.Shixin Ruan
Zstack platform provides a AWS Ec2 metadata service, and identifies their platform to the guest by setting the 'chassis asset tag' to a string that ends with '.zstack.io'. LP: #1841181
2019-09-11Brightbox: restrict detection to require full domain match .brightbox.comScott Moser
The detection for brightbox in both ds-identify and in identify_brightbox would incorrectly match the domain 'bobrightbox', which is not a brightbox platform. The fix here is to restrict matching to '*.brightbox.com' rather than '*brightbox.com' Also, while here remove a url to bug 1661693 which added the knowledge of brightbox.
2019-08-08New data source for the Exoscale.com cloud platformChris Glass
- dsidentify switches to the new Exoscale datasource on matching DMI name - New Exoscale datasource added Signed-off-by: Mathieu Corbin <mathieu.corbin@exoscale.ch>