<commit_before>Setebos
=======

Setebos is a dead-simple tool to configure a server.

## How to use?

Write a simple YAML file (preferably called `.setebos`):

```yaml
# Destination server.
server:
  host: ip or name
  user: username # optional, default to root
  password: password # optional

# Execute a list of scripts in the same order as below.
scripts:
  - script1
  - script2
  - etc.

# Copy these files to the server.
files:
  - from: path/to/file1.sh
    to: dest/for/
  - from: path/to/find/file2.rb
    to: dest
  - from: etc.
    to: etc.
```

Then, call setebos:

```bash
setebos run '/path/to/config/file'
```

## Development

```bash
# Run the launcher.
bundle exec bin/setebos

# Run the tests.
bundle exec rake test
```

Alternatively:

```bash
export RUBYLIB=lib
bin/setebos
```

## Future

* Support port in the `server` section.
* Support user generation in a new `users` section.
* Support for configuration files edition in a dedicated section.
* Create boilerplate `.setebos` file with `setebos init`.

## Inspiration

Inspired by [Fucking Shell Scripts](http://fuckingshellscripts.org/).<commit_msg>README: add feature to "Future".<commit_after>Setebos
=======

Setebos is a dead-simple tool to configure a server.

## How to use?

Write a simple YAML file (preferably called `.setebos`):

```yaml
# Destination server.
server:
  host: ip or name
  user: username # optional, default to root
  password: password # optional

# Execute a list of scripts in the same order as below.
scripts:
  - script1
  - script2
  - etc.

# Copy these files to the server.
files:
  - from: path/to/file1.sh
    to: dest/for/
  - from: path/to/find/file2.rb
    to: dest
  - from: etc.
    to: etc.
```

Then, call setebos:

```bash
setebos run '/path/to/config/file'
```

## Development

```bash
# Run the launcher.
bundle exec bin/setebos

# Run the tests.
bundle exec rake test
```

Alternatively:

```bash
export RUBYLIB=lib
bin/setebos
```

## Future

* Support port in the `server` section.
* Look for a `.setebos` file automatically when not provided with the `run` command.
* Support user generation in a new `users` section.
* Support for configuration files edition in a dedicated section.
* Create boilerplate `.setebos` file with `setebos init`.

## Inspiration

Inspired by [Fucking Shell Scripts](http://fuckingshellscripts.org/).
{'fraction_non_alphanumeric': 0.11767204757858964, 'fraction_numerical': 0.0033984706881903144, 'mean_word_length': 3.5114942528735633, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '278441', 'n_tokens_mistral': 822, 'n_tokens_neox': 781, 'n_words': 288}