Modern UI and powerful API for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.
  • JavaScript 58%
  • Go 28.5%
  • Vue 12.4%
  • Shell 0.3%
  • Dockerfile 0.2%
  • Other 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Denis Gukov 90b2f64296
fix/delete user error (#4147)
* fix(db): error message validation

* test: delete user

* feat: migration

* test: fix test

* fix(db): cascade delete

* feat(logs): add more logs

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-08-16 20:18:23 +05:00
.claude feat(survey_vars): store survey secret to the database as access key (#4086) 2026-07-25 11:45:58 +05:00
.devcontainer fix: merge conflict 2026-06-18 21:01:56 +05:00
.dredd fix(dredd): init apps 2026-07-28 19:18:06 +05:00
.github fix: branch and use correct function 2026-07-28 14:46:41 +05:00
.vscode feat(auth): verify current password to fix CWE-620 2026-07-12 16:35:43 +05:00
AGENTS fix: add undo migration for 2.20.1 2026-07-29 15:02:01 +05:00
api feat: persist user language preference 2026-08-16 14:05:06 +00:00
cli fix(secrets): do not remove synchronized fields and readoly fields 2026-07-28 10:07:53 +05:00
db fix/delete user error (#4147) 2026-08-16 20:18:23 +05:00
db_lib fix(git): add end-of-options flag 2026-07-19 19:13:26 +05:00
deployment fix: branch and use correct function 2026-07-28 14:46:41 +05:00
docs@dc61d7c1c5 docs: update docs link 2026-08-10 10:12:26 +05:00
examples feat(auth): link LDAP/OIDC logins via external identity instead of email matching (#4025) 2026-07-14 10:14:42 +05:00
hook_helpers fix(be): move goodman import to separate package to fix tests 2021-08-27 11:58:31 +05:00
pkg Merge pull request #4054 from befika/feat/prometheus-metrics 2026-07-22 16:25:55 +05:00
pro chore: update deps 2026-07-17 03:40:55 +05:00
pro_interfaces feat/executor image in template (#4104) 2026-07-30 16:18:06 +05:00
services fix(tasks): JSON-encode multi-select survey vars in shell CLI args 2026-08-05 11:04:11 +00:00
test remove boltdb (#3876) 2026-06-07 17:53:53 +05:00
util Merge pull request #4054 from befika/feat/prometheus-metrics 2026-07-22 16:25:55 +05:00
web Make lang computed property reactive by deriving from $i18n.locale 2026-08-16 14:53:30 +00:00
.codacy.yml ci: add codacy config file and exclude dredd tests 2024-09-28 16:30:39 +05:00
.cursorignore test: rename test dir 2025-12-15 21:55:33 +05:00
.dockerignore chore: add initial dockeringore config 2024-04-28 00:10:30 +02:00
.gitignore chore: ingore unused files 2026-07-05 17:38:39 +05:00
.gitmodules feat: add docs submodule 2026-06-21 20:34:10 +05:00
.golangci.yml chore(golangci-lint): re-enable golang linter 2025-05-11 11:19:38 +08:00
.goreleaser.yml ci: GPG security@semaphoreui.com 2026-07-18 15:43:32 +05:00
api-docs.yml feat/executor image in template (#4104) 2026-07-30 16:18:06 +05:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 2024-09-26 23:39:36 +05:00
config.schema.yaml Merge pull request #4054 from befika/feat/prometheus-metrics 2026-07-22 16:25:55 +05:00
CONTRIBUTING.md Feat/k8s executor (#3949) 2026-06-13 20:57:03 +05:00
go.mod fix(deps): update module github.com/go-git/go-git/v5 to v5.19.2 2026-07-31 17:30:57 +00:00
go.sum fix(deps): update module github.com/go-git/go-git/v5 to v5.19.2 2026-07-31 17:30:57 +00:00
LICENSE feat(schedule): change column order 2024-06-25 01:26:21 +05:00
package-lock.json Workflows 2026-06-14 14:45:23 +05:00
qodana.yaml feat(config): add uid to process config 2025-04-17 11:54:48 +05:00
README.md Semaphore UI one-click deployment on Cloudzy 2026-08-16 10:43:47 +03:30
renovate.json fix: add custommanager to renovate.json 2026-06-28 09:28:40 +02:00
SECURITY.md docs(security): update sla 2026-07-19 13:23:29 +05:00
Taskfile.yml feat: add repos for community and standard versions (#3376) 2025-10-27 18:02:15 +05:00
THIRD-PARTY-LICENSES.md Feat/k8s executor (#3949) 2026-06-13 20:57:03 +05:00

Semaphore UI

Modern UI for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.

Dev

responsive-ui-phone1

If your project has grown and deploying from the terminal is no longer feasible, then Semaphore UI is the tool you need.

Demo

Try Semaphore UI online

What is Semaphore UI?

Semaphore UI is a modern web interface for managing popular DevOps tools.

Semaphore UI allows you to:

  • Easily run Ansible playbooks, Terraform and OpenTofu code, as well as Bash and PowerShell scripts.
  • Receive notifications about failed tasks.
  • Control access to your deployment system.

Key Concepts

  1. Projects is a collection of related resources, configurations, and tasks.
  2. Task Templates are reusable definitions of tasks that can be executed on demand or scheduled.
  3. Task is a specific instance of a job or operation executed by Semaphore.
  4. Schedules allow you to automate task execution at specified times or intervals.
  5. Inventory is a collection of target hosts (servers, virtual machines, containers, etc.) on which tasks will be executed.
  6. Variable Group refers to a configuration context that holds sensitive information such as environment variables and secrets used by tasks during execution.

Getting Started

You can install Semaphore using the following methods:

Docker

The most popular way to install Semaphore is via Docker.

docker run -p 3000:3000 --name semaphore \
	-e SEMAPHORE_DB_DIALECT=sqlite \
	-e SEMAPHORE_ADMIN=admin \
	-e SEMAPHORE_ADMIN_PASSWORD=changeme \
	-e SEMAPHORE_ADMIN_NAME=Admin \
	-e SEMAPHORE_ADMIN_EMAIL=admin@localhost \
	-d semaphoreui/semaphore:latest

We recommend using the Container Configurator to get the ideal Docker configuration for Semaphore.

Other Installation Methods

For more installation options, visit our Installation page.

Documentation

Awesome Semaphore

A curated list of awesome things related to Semaphore UI.

Contribution

License

MIT © Denis Gukov