Commit Graph

16 Commits

Author SHA1 Message Date
Monty Taylor e8716e742e Move base roles into a base subdir
If we move these into a subdir, it cleans up the number of things
we nave to files match on.

Stop running disable-puppet-agent in base. We run it in run-puppet
which should be fine.

Change-Id: Ia16adb96b11d25a097490882c4c59a50a0b7b23d
2020-05-27 16:28:37 -05:00
Zuul 3d000db788 Merge "Move build-essential arm64 things to base" 2020-05-12 00:57:07 +00:00
Ian Wienand a46422838d Move build-essential arm64 things to base
The "there's no wheel for that" problem is a pretty generic thing on
arm64 nodes; also install the basic builder packages to during base so
it applies to all arm64 servers.

Change-Id: Ib420001de673f4d8f935be9b97f7d16818195cd5
2020-05-07 15:20:46 +10:00
Monty Taylor 39495ffdd5 Test zuul-executor on focal
We want to replace the current executors with focal executors.
Make sure zuul-executor can run there.

Kubic is apparently the new source for libcontainers stuff:

  https://podman.io/getting-started/installation.html

Use only timesyncd on focal

ntp and timesyncd have a hard conflict with each other. Our test
images install ntp. Remove it and just stay with timesyncd.

Change-Id: I0126f7c77d92deb91711f38a19384a9319955cf5
2020-05-06 18:00:29 -05:00
Monty Taylor 68b50ca05b Rearrange set-hostnames and cloud-init removal
In launch-node, we run two playbooks that aren't part of base.
One sets the system's hostname and removes cloud-init, the other
runs unattended update.

We need to run the hostname setting in our functional tests so
that the hosts behave as expected, but running the cloud-init
removal is a little weird, since our test nodes already don't
have it.

Make it so that set-hostname actually just sets the hostname,
and then run it in run-base. For running puppet, we need the
host to have the correct hostname.

Move cloud-init removal to the base-server role. Also move
the autoremove into base-server, since it's probably a nice
way to get rid of excess things.

Change-Id: I53cb8c515444a7d73b839e799c5794b067429daa
2020-04-21 13:18:24 -05:00
Monty Taylor 622c7ad0c9 Remove the Rackspace Cloud repo
There's this apt repo on the servers! It has nova-agent in it,
which we don't use - but there it is. Let's remove it, because
that's just really not what we do.

Change-Id: Id1fd4753a96829d3333ece3785246ad9bb141d54
2020-03-16 17:29:10 -05:00
Ian Wienand d232403e79 base-server: disable install of suggests and recommends packages
The options to disable installing suggests and recommended packages
has been in diskimage-builder based images for a long time [1].
However we have no setting for it in our base-server role, meaning
that when launching nodes from cloud-provider images we can be out of
sync on this option.

I6d69ac0bd2ade95fede33c5f82e7df218da9458b is an example where packages
pulled in by suggestions can fail (arguably a packaging issue, but
anyway...)

By enabling this here, we make our control plane servers homogenous
with our diskimage-builder based testing nodes, which is better for
general sanity.  Overall it gives us more control over what's
installed.

[1] https://opendev.org/openstack/diskimage-builder/src/branch/master/diskimage_builder/elements/dpkg/pre-install.d/00-disable-apt-recommends

As I6d69ac0bd2ade95fede33c5f82e7df218da9458b showed, installing
suggested or recommended packages might result in

Change-Id: Id6dcc158944a46fc0ae03b6f1ff372dacd67c2e6
2019-07-31 16:21:08 +10:00
Zuul 3fe88abb92 Merge "Remove apport package from ubuntu servers" 2019-07-18 13:43:05 +00:00
Ian Wienand 482e1110f0 Use systemd-timesyncd on Bionic
There are long-standing issues with ntp start ordering w.r.t unbound
and being able to resolve DNS names.  Things have moved on to
systemd-timesyncd anyway.  Move the ntp start from the generic
locations to only apply to older distros, and use system-timesyncd on
Bionic.  Update testing.

Change-Id: I664539f93242e2c68d0cb1cf95c260f3bc03550d
2019-06-14 13:06:24 +10:00
Monty Taylor 5be6ec657d Remove apport package from ubuntu servers
Our servers have apport installed, because ubuntu. What's more, they
have:

  cat /proc/sys/kernel/core_pattern
  | |/usr/share/apport/apport %p %s %c %d %P

Which means "pipe core dumps to the apport program". This makes debugging
real core dumps, well, hard.

We uninstall the package because our test nodes don't have apport
installed which makes disabling the service more complicated if we want
that to work on test nodes and in production. Ensuring the package is
not installed is simpler so we do that.

Change-Id: I32ca61e14eb7b981af47544b73d9f16dbb209e99
2019-06-12 15:19:39 -07:00
James E. Blair 94d404a535 Install kubectl on bridge
With a snap package.  Because apparently that's how that's done.

Change-Id: I0462cc062c2706509215158bca99e7a2ad58675a
2019-02-11 10:16:58 -08:00
Clark Boylan 5f6a1c33c0 Don't install lxd on our servers
We don't intend on using lxd on our servers and lxd is causing problems
for unattended upgrades. Lets just make sure these packages aren't
installed and avoid the problems entirely.

Change-Id: I9c6fcf8b0072c23ee0127245fa3bb6c3477dcaf5
2018-12-05 10:26:01 -08:00
Monty Taylor 71bf869225
Remove snapd from servers
We don't use snappy to install software on our servers, but it started
being installed by default. We don't need it, so remove it.

Change-Id: I043d4335916276476350d9ac605fed1e67362e15
2018-09-27 07:45:31 -05:00
Paul Belanger a28875c4cc Use package task over apt for base-server
Package is the generic way of using package managers in Ansible. This
will be a noop.

Don't use loops for package managers, since we are able to pass lists of
packages. This will reduce the number of tasks ansible will do.

Change-Id: If7988ba81a6bf851d1b5ec9db6888ba9509ed788
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-09-04 15:21:48 -04:00
David Shrewsbury 6a8707a02d Enable unattended upgrades
Debian gets this from 'unattended-upgrades' and Red Hat family
gets it from yum-cron.

Change-Id: Ie00f6073ad1127b11a89e69816baf47011480dbf
2018-08-28 12:05:15 -04:00
Monty Taylor 0bb4232586 Add base playbooks and roles to bootstrap a new server
We want to launch a new bastion host to run ansible on. Because we're
working on the transition to ansible, it seems like being able to do
that without needing puppet would be nice. This gets user management,
base repo setup and whatnot installed. It doesn't remove them from the
existing puppet, nor does it change the way we're calling anything that
currently exists.

Add bridge.openstack.org to the disabled group so that we don't try to
run puppet on it.

Change-Id: I3165423753009c639d9d2e2ed7d9adbe70360932
2018-08-01 14:57:44 -07:00