- feat: add troubleshoot command
- feat: add project level secrets
- feat: add secret organization access policy configurability
- fix: Use create debug project instead of create job from job api
- feat: add optional paused field to project API
- fix: exit status 255 issue with port forwarding
- build: update get.template.sh
- Add get/create/delete commands for agent types
- Add
--github-integration
option for init command
- Add apply for project yaml files
- Self-hosted debug sessions support
- Adds agent name to job
- Allow repo URLs also from other hosts than github.com
- Update goreleaser
- Adds secret to webhook notifications
- Adds custom_permissions flag for projects
- Updates goreleaser
- fixes support for arm64
- Adds support for Darwin arm64 (M1)
- Fix ssh executable check
- Introduced support for debug/attach permissions in projects
- Init projects with branches and tags enabled
- Update docker image in semaphore config file
- Update debug docs link
- Fix port-forward for macOS cli release
- Introduce webhooks in notifications
- Introduced support for changing project public status
- Introduced support for changing branches and tags whitelists
- Introduced support for changing repository status notification
- Move debug job creation to server side
- Modify initial pipeline file for projects
- Fix race condition between toolbox installation and SSH jump in; This bug manifested as "unknown command checkout" if the SSH jump in happened before the toolbox installation finished.
- Introduced support for managing pull requests related settings to project
- Fix "Too many authentication failures" error for debug sessions by utilizing IdentitiesOnly=yes
- SSH sessions work without configuring the CLI with an SSH key
- Customers can attach to any Job without the need to inject public keys into the job
- Debugging and Attaching works for Docker based CI/CD environments
- Introduced support for managing scheduler rules with project edit
- Sem CLI versioning fixes
- Versioning of the CLI is fixed
- We display release version, release sha, and release date in sem cli
- We ship all releases to Github releases instead of Google Cloud Storage drive
- get.sh script is now downloading from Github
- Introduced sem edit project support
- Introduced -e flags in Secret creation for passing list of environment variables.
- Handle race condition when entering SSH debug session (client tries to enter before the key is exported)
- Display verbose message if the debug session gets a Permission Denied response.
- Check if user entered the correct auth token when connecting with
sem connect <org>
- SSH sessions: Shutdown machine when user leaves the session
- SSH sessions: Display duration of SSH session
- SSH sessions: Display how to checkout code
- SSH sessions: Display how to run commands
- SSH sessions: Display how to exit session
- SSH sessions: Display link to documentation
- Support for EDITOR environment var
- Support for custom flags in editor, example:
EDITOR="subl --wait
- Issues with release machinery while releasing v0.8.15
- Improve error message if project name can't be inferred from git repository
- Workflow follow switch
- Multipart content-type for snapshots
- Issues with release machinery
- List pipelines
- Workflow stop
- Adjust message when editor fails to edit
- archive switch in snapshot cretate (can send arbitrary tgz file as snapshot archive)
- Workflow rebuild
- Describe workflow and extended describe for workflow
- Stop running job with
sem stop job <id>
- Default duration of Debug session is 60minutes and can be extended on demand
with
sem debug project <name> --duration 30m
. - Require at least one argument in create commands
- Fix bug with missing verification of the SSH key while starting debugging
- Create workflow with all files in current directory
- Create default label for snapshot
- Display creation time in get workflow
- Resolve project name based on git URL
- Fix bug when sem CLI panics in case of erroneous YAML file
- Fix osX binary release name from 'cli' -> 'sem'
- Goreleaser and Homebrew
- Apply changes to a notification with sem apply -f [notification-file]
- Create workflow from label
- Create notification from YAML file
- Edit notification
- Fix notification creation with no branch rule
- Fix creation of Slack notifications from
sem create notification
- Get, List, Create and Delete notifications
- Extend pipeline describe with block/job info
- Put archive in snapshot create request
- Define machine-type when starting a debug session for projects.
Example:
sem debug project cli --machine-type e1-standard-4
.
- Fix debugging projects with sem CLI tool
- Describe a pipeline
- Stop a pipeline
- List workflows
- Rebuild a pipeline
- Snapshot based workflow
- HTTP(s) support in sem init
- Create a job from a YAML file.
- Debug a job. Example:
sem debug job <existing-job-id>
- Secrets creation from files. Example:
sem create secret aws-secrets -f /home/vagrant/.aws/credentials:/home/semaphore/.aws/credentials
- On demand job creation. Example:
sem create job hello-world --project cli --command 'echo "Hello World"'
- SSH command error message is displayed if
sem attach
fails. Example:permission deinied
. - Debugging a project with
sem debug project <project-name>
- Listing jobs
- Describing jobs
- Displaying logs with
sem logs <job-id>
- Attaching to running jobs with
sem attach
- Port forwarding for jobs with
sem port-forward
- Dashboards: Get, List, Edit, Create, Update
- Removal of
sem describe
in favor ofsem get <kind> <name>
- Projects are listing repository URL when
sem get projects
- Test coverage for all commands
- Fix invalid .semaphore/semaphore.yml creation logic introduced in preview1
- Secret name presence is validates in create and update
- Both
sem create secret <name>
sem create secrets <name>
is now available for consistency with other actions - Prevent raising errors if
sem create invalidname
is executed. Now a list of subcommands is displayed. - Ability to pass
--project-name
and--repo-url
tosem init
- Secrets are using the
v1beta
API - Files in Secrets
- Edit a secret with
sem edit secret <name>
- Update a secret with
sem apply -f <file-path>
- Secrets YAML validation in the CLI
- Display age of secrets when listing with
sem get secrets
- ApiVersion and Kind always present in Yaml format of Secrets
- Get one resource with
sem get project <name>
,sem get secret <name>
- Create an empty secret with
sem create secret <name>
- Verbose sem init git repository erorrs
- Fixed wrong .semaphore/semaphore.yml file permission. Now it is 0644.
- Type fix in sem config