Commit Graph

132 Commits

Author SHA1 Message Date
Juan Ibiapina
a3fdca2c69 Add instructions to install with basher 2016-02-12 16:51:37 -02:00
Bruno Lara Tavares
965dbe87b4 Add a reference to tty.space as an example
tty.space has a better example of how to use kickstart for configuring a server, as baseline is much more generic.
2015-11-19 10:23:08 -02:00
Bruno Tavares
d03b89a4f8 Prevents package query error to show up on logs.
As we changed the way we query for installed packages with dpkg, the
error that it reports when the package is installed is showing up on the
logs.

Instead we suppress the error message to prevent the following messages:

```
tools >> No packages found matching git-svn. Installing...
tools >> Running "apt-get install -y git-svn"
Package `ack-grep' is not installed and no info is available.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.
```
2015-09-30 10:00:19 -03:00
Bruno Tavares
ef8e89aa81 Regenerates the documentation 2015-09-30 08:40:17 -03:00
Bruno Tavares
ad66be4890 Sorts the functions on documentation index 2015-09-30 08:39:50 -03:00
Bruno Tavares
38ad846aeb Introduces kickstart.suppress_error function 2015-09-30 08:37:53 -03:00
Bruno Tavares
6538dd4bde Adjust documentation on kickstart.mute 2015-09-30 08:37:10 -03:00
Bruno Tavares
16b7005936 Make use of kickstart.mute on kickstart.command_exists.
This way we can debug the value returned when we enable the DEBUG flag.
2015-09-30 08:24:48 -03:00
Bruno Tavares
a0bb7e160d Improves installed package detection on debian-based
Instead of relying only on the exit code of dpkg query, we check that
the status is installed for sure.

This prevents situations where the package was not properly installed,
and has a status like "install ok not-installed".
2015-09-27 13:31:03 -03:00
Bruno Tavares
790f5b41ee Improves the logic around ppa addition
kickstart will check if the ppa has already been added and only update
the package cache the first time it is added. Further updates must be
handled by hand.

It also installs the required packages to manage the ppa over command
line if it is not present yet.
2015-09-27 13:20:33 -03:00
Bruno Tavares
caa3a7378b Allocates a tty when deploying to allow full fledge interaction
To have some interactions on the script we need to allocate a tty. This
adds a pseudo-tty to the ssh session.

This enables `read -s` on deployment scripts.
2015-09-26 23:44:25 -03:00
Bruno Tavares
a7daca90dd Fix prompt when executing the deployment with the password
`sudo -S` reads the password from stdin. The way it was it was executing
the deploy script with the password as the stdin of the pipe.

Now, when password is passed as an argument we aquire a sudo session
executing a command that always work and then prefixing the installation
with sudo.
2015-09-26 23:35:05 -03:00
Bruno Tavares
41cf8f98bf Allows deployment scripts to be interactive
Previously, because we were piping the compiled script blob over ssh to
decompress over there without creating an intermediated bundled file, we
were allocating the stdin of the ssh session to have the read from the
pipe.

This blocked the allocation of the /dev/tty over the session and
prevented users to interact with the script. We would like some of the
interactions to work, like prompting for a confirmation or typing a
password.

To fix this, the deployment process was split in two steps. The first
step still receives the bundled file over a pipe, decompresses it on a
temprary folder, and outputs the location of the deployment folder.

We grab this output to feed on the second step, which has a script to go
to the deployment folder and start the execution.

Now, roles can make use of read, as well as sudo with password.
2015-09-26 22:36:18 -03:00
Bruno Tavares
aafa6df1b7 Adds a command alias: create could also be called init 2015-09-26 15:51:49 -03:00
Bruno Tavares
2dbf3a59f3 Enables zsh autocompletion 2015-09-26 01:10:33 -03:00
Bruno Tavares
39e15e70a4 Fixes bash tab-completion 2015-09-26 01:00:17 -03:00
Bruno Tavares
d157180b92 Ensures that we execute the bootstraping using bash 2015-09-26 00:52:37 -03:00
Bruno Tavares
c68cbaeee8 Ensures that we execute the deployment using bash 2015-09-26 00:51:33 -03:00
Bruno Tavares
6149a4a8e1 Wraps deploy script execution on to prevent partial execution if it is terminated before finished transfering 2015-09-26 00:51:19 -03:00
Bruno Tavares
c3fcd798c3 Uses literal heredoc when compiling the module loading script to reduce escapings 2015-09-26 00:46:57 -03:00
Bruno Tavares
181f40fabb Renames variable on bootstrap script to not confuse with deployment host target. Also, prevents escaping of variables on the script to use literal $ 2015-09-26 00:42:53 -03:00
Bruno Tavares
0c7f0fe389 Unquote to let word splitting happens and pass the information to ssh. Bug introduced when cleaning up linting warnings. 2015-09-26 00:39:52 -03:00
Bruno Tavares
87060cbc94 Small nit detail 2015-09-26 00:35:28 -03:00
Bruno Tavares
d6da54c7ee Fixes container lookup not being able to find a container running for specific image.
docker ps does not receive any more arguments and we have to filter by image ourselves
2015-09-26 00:35:09 -03:00
Bruno Tavares
b09cdfc3e4 Fixes error when looking up documentation introduced when cleaning up lint errors 2015-09-26 00:32:39 -03:00
Bruno Tavares
f516cc2dac Renames variable on deployment script to not confuse with deployment host target 2015-09-26 00:32:34 -03:00
Bruno Lara Tavares
f3229ab566 Merge pull request #5 from rogeriochaves/patch-3
Remove double quotes from ssh target
2015-09-25 23:47:39 -03:00
Rogério Chaves
7cff074e95 Remove double quotes from ssh target 2015-09-25 20:12:01 -03:00
Bruno Lara Tavares
583bfa13db Merge pull request #4 from rogeriochaves/patch-2
Remove whitespace from the begining of templates
2015-09-25 11:56:11 -03:00
Rogério Chaves
f765cf05b2 Remove whitespace from the begining of templates 2015-09-25 09:37:59 -03:00
Bruno Lara Tavares
a1c5a34269 Merge pull request #3 from rogeriochaves/patch-1
Use head option in uppercase
2015-09-25 08:43:37 -03:00
Rogério Chaves
c5ebdb374b Use head option in uppercase 2015-09-25 00:49:36 -03:00
Bruno Tavares
08a4e1ac77 Reports the deployment execution status 2015-06-26 12:14:22 -03:00
Bruno Lara Tavares
0860d143e1 Merge pull request #2 from mindyor/patch-1
typo
2015-06-04 16:19:31 +02:00
mindyor
819217fd17 typo 2015-06-04 11:06:05 -03:00
Bruno Tavares
62a482c062 Updates documentation file with make 2015-05-24 00:09:52 -03:00
Bruno Tavares
421148456f Removes question marks from functions and update minor bash bugs 2015-05-23 23:39:39 -03:00
Bruno Tavares
eb501d3b93 Fixes service functions return code 2015-05-23 23:38:36 -03:00
Bruno Tavares
9fd8dcbca0 Lints the completion command 2015-05-20 17:21:27 -03:00
Bruno Tavares
25069f4877 Lints the executable scripts 2015-05-20 17:16:16 -03:00
Bruno Tavares
7a85a95a54 Lints the code using shellcheck 2015-05-20 16:08:45 -03:00
Bruno Tavares
e1bf0b113c Creates two user utility functions 2015-05-16 18:21:29 -03:00
Bruno Tavares
41f1fb4da8 Execute commands without login in so you can execute commands as nobody 2015-05-03 18:12:15 -03:00
Bruno Tavares
f7a19affc5 Add support for systemd services 2015-04-25 12:40:03 -03:00
Bruno Tavares
6fd8d5bd8f Fix templating with quotes and comments 2014-03-31 16:30:55 -03:00
Bruno Tavares
6d1ebff3d5 Create make install 2014-03-20 19:06:30 -03:00
Bruno Tavares
14146b2f54 Add information about arch container support 2014-03-20 18:38:56 -03:00
Bruno Tavares
07f5059cc6 Bootstrap on a temp folder like deploy 2014-03-20 18:37:51 -03:00
Bruno Tavares
d8ba5cbb59 package upgrade and update for pacman 2014-03-20 18:37:21 -03:00
Bruno Tavares
884a7fd143 Add pacman and Arch reporting 2014-03-20 18:21:45 -03:00