diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..bcfd2a9 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "ansible"] + path = ansible + url = https://github.com/moritzheiber/mastodon-ansible.git diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 7aeb9d4..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2017 Moritz Heiber - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..971572c --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,25 @@ +The MIT License (MIT) +===================== + +Copyright © 2017 Moritz Heiber + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the “Software”), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..bdf9f5d --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# A VirtualBox box for Mastodon + +This VirtualBox base box contains all the required packages and configuration for running/instantiating a Mastodon instance. It is build using [Hashicorp's Packer](https://packer.io), the provisioning is done with Ansible through a dedicated git submodule called [mastodon-ansible](https://github.com/moritzheiber/mastodon-ansible). The tests are using [ServerSpec](https://serverspec.org). + +## Prerequisites + +- VirtualBox >= 5.1.x +- Packer >= 1.0.0 +- Python >= 2.x +- pip/python-pip >= 8.x + +for testing purposes: + +- Vagrant >= 1.9.3 + +## Setup + +```sh +$ virtualenv env +$ source env/bin/activate +$ pip install -r requirements.txt +``` + +## Building the box + +TODO + +## Testing + +TODO diff --git a/ansible b/ansible new file mode 160000 index 0000000..6ab1474 --- /dev/null +++ b/ansible @@ -0,0 +1 @@ +Subproject commit 6ab14744140a25e7e952117e5524e9424918f1f8 diff --git a/preseeds/preseed.cfg b/preseeds/preseed.cfg index e94135a..2e4f7a0 100644 --- a/preseeds/preseed.cfg +++ b/preseeds/preseed.cfg @@ -16,7 +16,7 @@ d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true d-i partman/confirm_write_new_label boolean true -d-i pkgsel/include string openssh-server cryptsetup build-essential libssl-dev libreadline-dev zlib1g-dev linux-source dkms nfs-common +d-i pkgsel/include string openssh-server linux-source dkms nfs-common d-i pkgsel/install-language-support boolean false d-i pkgsel/update-policy select none d-i pkgsel/upgrade select full-upgrade diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..b1d20a6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +ansible==2.2.2.0