160 Commits

Author SHA1 Message Date
Pete Vander Giessen
92a6ea8dc7 Broke configuration out into a manual step.
Renamed the old and outdated "configure-openstack" script to "init.sh"

Updated init.sh and folded most of the configure hook into it.

Removed database installation step from install hook.

We can now install microstack without a database dump, which helps
immensely in updating. And we have a logical place to put additional
configuraiton, including some of the manual steps in DEMO.md, which
could be scripted if we gave users a chance to skip the system changes
that they wanted to skip.

Also updated README and DEMO file to match new flow. Updated test
files.

Future cleanup and features documented in Trello, but not included in
this PR, which is big enough already :-)

Change-Id: I8d926a8b463124494ddb7a4696adbe86f89db7d5
2019-08-01 21:12:05 +00:00
Zuul
de77b4a426 Merge "Added snap configuration." 2019-07-25 18:21:32 +00:00
Pete Vander Giessen
95efd789b4 Added snap configuration.
Moved openstack env variables out of snapcraft.yaml, and into a
"microtack.rc".

Made openstack-wrapper, which auto sources microstack.rc.

Key off of revised snap.openstack, which supports snapctl config
values in templates. Moved a lot of the overlay into
snap-overlay/templates, and added config values to them. Also writes
templates just once, when you run snap-openstack setup.

Change-Id: Ib0f2e3fc97f491d9ed9dfbafc61dc8e27a8a2b48
2019-07-25 16:37:51 +00:00
Zuul
1a34307f3b Merge "Added core18 snap path to PATH." 2019-07-25 14:24:00 +00:00
Pete Vander Giessen
59551ca2cd Added support for testing in multipass vms back to basic_test
Script now takes a "-m" argument. This helps to test locally in a
fresh environment.

Change-Id: I7848070cfdf809f084a107f23112fcfc71e11bf4
2019-07-24 22:59:15 +00:00
Pete Vander Giessen
65441d5b2a Added core18 snap path to PATH.
This should fix the issue where the configure hook doesn't run
properly on systems without netcat installed.

Also got rid of call to install netcat in tools/install_and_build.sh.

Doubled timeout in .zuul.yaml to deal with timeout that happened
during this test (I think that we were pushing the hour timeout as it was).

Change-Id: Ie9cd729109a871c32c12108163d22008d91155f9
2019-07-24 19:59:43 +00:00
Pete Vander Giessen
8ea5dc8679 Added automated testing via tox and zuul.
Tweaked tests/basic_test.sh functional test so that it no longer
requires multpass, and can run without kvm cpu extensions being
enabled (not all machines in the game have cpu extensions.)

Added tox.ini, wrapper script for building and installation, etc.

Change-Id: I968116dd7bec412a55813c896d60cfc86c7070db
2019-07-24 08:04:38 +01:00
James Page
96c94f0cf5 Update libvirt package version (#79) 2019-07-15 11:14:26 -04:00
Pete Vander Giessen
2af4747bf4 Got rid of .travis.yml 2019-07-02 10:14:55 -04:00
Pete Vander Giessen
8436824c20
Renamed travis.yaml to travis.yml. (#76) 2019-06-26 11:25:21 -04:00
Pete Vander Giessen
7b4e61201b
Cruft cleanup. (#75)
* Cruft cleanup.

Organized snapcraft.yaml better, and got rid of unecessary bits.

* Cleaned up scripts.

Moved launch.sh into snap-overlay, to be more consistent with
everything else.

Got rid of outdated and confusing configure-the-things script.

* Clarified a comment.

* Got rid of erroneous config file.

* Undeleted config file -- wasn't erroneous!
2019-06-25 13:45:00 -04:00
Pete Vander Giessen
f45bfd913d
Refactor snap to work with core18. (#73)
Refactor snap to work with core18.

Giving the snapcraft.yaml a base property helps tremendously with the
efficiency of the build process, and I believe that it puts us in a
better position to reliably support non Ubuntu distros going forward.

This also bases us on long supported bionic libraries, and gives us a
nice place to work from as we add Python 3 and Stein support, as well
as general polish and fixes.
2019-06-25 11:31:42 -04:00
Tim McNamara
575a7ee54c Formatting improvements; add Juju discourse link (#69)
This commit makes a few stylistic changes which aid readability.
2019-05-17 17:40:56 -04:00
Nikolay Vinogradov
e5127e0012 Fix snapcraft build after qemu_2.5 source package rebuilding (#71)
qemu_2.5+dfsg-5ubuntu10.36.debian.tar.xz (404) -> 10.38
2019-05-16 11:12:37 -04:00
Pete Vander Giessen
343f6b4eb9 Sneaky update of DEMO.md, to reflect live changes made during the workshop. 2019-05-03 11:32:31 -06:00
Ryan Beisner
30159a1f1d
Merge pull request #68 from CanonicalLtd/move-images-location
Moved cirros image to /var/snap/microstack/common/images
2019-04-22 14:34:29 -05:00
Pete Vander Giessen
6e13cc4112 Moved cirros image to /var/snap/microstack/common/images
This way, it will get cleaned up when we uninstall the snap.

Also added test hooks to test upgrades, to verify that we aren't
breaking existing snaps.
2019-04-19 17:17:29 -04:00
Ryan Beisner
d814e9e122
Merge pull request #64 from CanonicalLtd/demo-docs
Added DEMO.md
2019-04-19 11:07:58 -05:00
Pete Vander Giessen
6475d60d19 Updated language to point to beta rather than edge. 2019-04-19 11:29:33 -04:00
Pete Vander Giessen
fbb44e4ab4 Got rid of WIP. 2019-04-19 10:40:54 -04:00
Pete Vander Giessen
c1efa221f8
Fixed test cleanup. (#65) 2019-04-18 09:26:16 -04:00
Ryan Beisner
dfeb664207
Merge pull request #63 from CanonicalLtd/bug/1823016-default-dns
Added default dns server for microstack guests.
2019-04-11 15:08:25 -05:00
Ryan Beisner
bf1927be79
Merge pull request #62 from CanonicalLtd/bug/fix-slow-vms
Switched back to kvm and host-passthrough vm defaults.
2019-04-11 15:08:10 -05:00
Pete Vander Giessen
6dc3155cbb spelling. 2019-04-11 15:37:56 -04:00
Pete Vander Giessen
d889e3595a Updated minimum requirements. 2019-04-11 15:15:00 -04:00
Pete Vander Giessen
c3a5a00898 Added DEMO.md
These are instructions for runnning the demo that we're planning on
running at the Denver Openstack summit. It walks the user through
deploying microstack, and then deploying a functioning kubernetes
cloud on top of it.
2019-04-11 15:12:44 -04:00
Pete Vander Giessen
dfdd85ecb4 Added newline at end of dhcp_agent.ini 2019-04-10 14:57:44 -04:00
Pete Vander Giessen
d8c34fa1dc Added default dns server for microstack guests. 2019-04-10 14:56:30 -04:00
Ryan Beisner
d6d2bac24a
Merge pull request #60 from CanonicalLtd/bug/1823179-no-longer-use-localhost
Updated microstack api endpoints from localhost to 10.20.20.1
2019-04-10 13:47:39 -05:00
Pete Vander Giessen
dcf6dd98d8 Switched back to kvm and host-passthrough vm defaults. This will break Virtualbox, but it will make machines on bare metal and kvm setups run a lot, lot faster. 2019-04-10 14:21:05 -04:00
Pete Vander Giessen
56cd24f5d0 Moved from database dump to hack.
Dropped a command to change the endpoints from localhost to 10.20.20.1
in the configure hook.

This is a temporary solution, pending automation of the database
update. (I was burning too much time getting a manual dump to work for
now.)
2019-04-10 14:12:01 -04:00
Pete Vander Giessen
369abc1f6f Updated mysql tarball. 2019-04-08 15:10:18 -04:00
Pete Vander Giessen
34f962dd97 Added updated mysql tarball, and updated tests.
Updated the mysql tarball, which has the localhost -> 10.20.20.1
update.

Test for pinging Internet was failing due to not waiting long enough,
so added a proper retry strategy.
2019-04-05 17:10:41 -04:00
Pete Vander Giessen
6eaf44bbfa Udpated microstack api endpoints from localhost to 10.20.20.1
Addresses the issue where services such as a juju controller cannot
access endpoints from within an instance.

Updated all references to localhost to 10.20.20.1, and added the
address to ALLOWED_HOSTS.

Also updated version of qemu lib.
2019-04-04 10:52:18 -04:00
Pete Vander Giessen
a735b0973c
Added a functional test. (#58)
This is a little messy -- it's a bash script with some outside
dependencies, and it makes assumptions about the capabilities of the
environment that it's being run in. But it does basically work, and
provides contributors with some basic reassurance that they have built
a working snap.
2019-03-27 17:00:26 -04:00
Pete Vander Giessen
fdd341824c
Added iptables rules and sysctl vars for internet access (#57)
Fixes lp#1812415

Prior to this fix, instances spun up by microstack could not
successfully route to and from the Internet. Setting a rule for ipv4
forwarding and iptables rules for the nat fix the issue.
2019-03-27 12:38:52 -04:00
Nicolas Pochet
4e4d802b43 Add ubuntu theme (#55) 2019-02-05 10:07:27 -05:00
James Page
987c657094
Merge pull request #54 from CanonicalLtd/contributing
Added CONTRIBUTING.md.
2019-01-29 16:28:58 +00:00
Pete Vander Giessen
d4f3d3d83d Added CONTRIBUTING.md.
Also added a link to launchpad in the README.
2019-01-29 10:33:00 -05:00
Pete Vander Giessen
c378248bd9
Fixed keypair generation in launch.sh. (#53)
Was appending, rather than overwriting a key when generating a key. Whoops!
2019-01-10 17:28:25 -05:00
Pete Vander Giessen
8bcda8bdd3
Disabled themes. (#52)
This is a bandaid for
https://github.com/CanonicalLtd/microstack/issues/39, where switching
to the material theme can get your GUI stuck in an errored
state. We'll re-enable everything once that bug is fixed.
2019-01-09 16:26:33 -05:00
Ryan Beisner
130ff892b7
Merge pull request #48 from CanonicalLtd/add-launch-to-readme
README now mentions microstack.launch.
2018-12-13 11:12:38 -06:00
Ryan Beisner
362395dea1
Merge pull request #47 from CanonicalLtd/more-compatible-vm-defaults
Switched to qemu and host-model libvirt settings.
2018-12-13 10:18:51 -06:00
Pete Vander Giessen
412df2b15d README now mentions microstack.launch. 2018-12-12 22:32:10 +00:00
Pete Vander Giessen
c563717f6e Switched to qemu and host-model libvirt settings.
These settings are less performant, but more universally compatible.

A seperate task would be to expose these settings via the snap config,
in some sensible way. For now, this means that microstack will "just
work" in more places.
2018-12-12 22:08:59 +00:00
James Page
6aa38a941a
Merge pull request #46 from CanonicalLtd/fix-network-after-reboot2
Persist external bridge over reboots.
2018-12-06 06:47:33 +00:00
Pete Vander Giessen
597ffc99d8 Perist external bridge over reboots.
This fixes an issue where we weren't creating a netplan config and/or
and entry in /etc/network/interfaces for br-ex, and thus losing
external access to our virtual networks after reboot.

Since we don't actually want to touch the host system's networking
config, we just drop a oneshot daemon into place that sets br-ex up
each time the snap services are started.
2018-12-05 21:25:11 +00:00
Pete Vander Giessen
e769f51a9d
Fixed openvswitch timeout issue. (#43)
It appeared to merely be an issue of ensuring that the daemon started before the server.

Also the version on one of the files that we download for another serivce. (Fragile code is still fragile, but fixing it is a separate TODO.)
2018-12-03 14:16:15 -05:00
Chris Morgan
d47a1602f4 Avoid getting to "(try 4 of 3)" tries to build the instance (#40) 2018-11-28 18:24:43 -05:00
Pete Vander Giessen
454fd38526
Fix instance errors (#34)
* Fix some common errors when starting up.

Added more polls for services that we want to make sure are up and running.

Fixed issue where launch script wouldn't run when /snap/bin wasn't in the PATH.

* Added very basic resiliance to launch.sh script.

Tears down a machine and attempts to rebuild it if the build drops into an error state.
2018-11-14 11:14:30 +01:00