mirror of
https://github.com/semaphoreui/semaphore.git
synced 2024-11-23 20:35:24 +01:00
Modern UI for Ansible, Terraform, OpenTofu, PowerShell and other DevOps tools.
bin | ||
lib | ||
playbooks | ||
public | ||
.bowerrc | ||
.dockerignore | ||
.gitignore | ||
bower.json | ||
Dockerfile | ||
fig.yml | ||
LICENSE | ||
package.json | ||
README.md | ||
Vagrantfile |
semaphore
Open Source Alternative to Ansible Tower
Features
The basics of Ansible Tower, but in addition:
- Fast, Simple interface (not having to submit a million forms to get something simple done)
- Task output is streamed live via websocket
- Create inventories per playbook
- Add rsa keys (to authenticate git repositories)
- Run playbooks against specified hosts
- Multiple Users support
Docker quickstart
Run redis
docker run -d \
--name=redisio \
redis
Run mongodb
docker run -d \
--name=mongodb \
-p 127.0.0.1:27017:27017 \
mongo
Run semaphore
docker run -d \
--name=semaphore \
--restart=always \
--link redisio:redis \
--link mongodb:mongo \
-e MONGODB_URL="mongodb://mongo/semaphore" \
-e REDIS_HOST="redis" \
-p 80:80 \
castawaylabs/semaphore
Development
- Install VirtualBox & Vagrant
- Run
vagrant plugin install gatling-rsync-auto
- Run
vagrant up
to start the vagrant box - Run
vagrant gatling-rsync-auto
to synchronise changes from your local machine to vagrant
Running semaphore inside vagrant
vagrant ssh
,cd /opt/semaphore
npm install
bower install
npm install -g nodemon
nodemon bin/semaphore
Initial Login
Email: 'admin@semaphore.local'
Password: 'CastawayLabs'
Environment Variables
Use these variables to override the config.
Variable Name | Description | Default Value |
---|---|---|
PORT | Web Port | 80 |
REDIS_PORT | Redis Port | 6379 |
REDIS_HOST | Redis Hostname | 127.0.0.1 |
REDIS_KEY | Redis auth key | |
BUGSNAG_KEY | Bugsnag API key | |
SMTP_USER | Mandrill smtp username | |
SMTP_PASS | Mandrill smtp password | |
MONGODB_URL | Mongodb URL | mongodb://127.0.0.1/semaphore |
Vision and goals for v1
- Be able to specify environment information per playbook / per task
- Schedule jobs
- Email alerts
- Multiple user support
Articles
License
MIT