Merge branch 'ansible-semaphore:develop' into develop

This commit is contained in:
Jonathan 2023-08-31 00:31:05 +08:00 committed by GitHub
commit 1666e82e1d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 360 additions and 4 deletions

View File

@ -0,0 +1,48 @@
---
name: Documentation
description: You have a found missing or invalid documentation
title: "Docs: "
labels: ['documentation', 'triage']
body:
- type: markdown
attributes:
value: |
Please make sure to go through these steps **before opening an issue**:
- [ ] Read the [documentation](https://docs.ansible-semaphore.com/)
- [ ] Read the [troubleshooting guide](https://docs.ansible-semaphore.com/administration-guide/troubleshooting)
- [ ] Read the [documentation regarding manual installations](https://docs.ansible-semaphore.com/administration-guide/installation_manually) if you did install Semaphore that way
- [ ] Check if there are existing [issues](https://github.com/ansible-semaphore/semaphore/issues) or [discussions](https://github.com/ansible-semaphore/semaphore/discussions) regarding your topic
- type: textarea
id: problem
attributes:
label: Problem
description: |
Describe what part of the documentation is missing or wrong!
Please also tell us what you would expected to find.
What would you change or add?
validations:
required: true
- type: dropdown
id: related-to
attributes:
label: Related to
description: |
To what parts of Semaphore is the documentation related? (if any)
multiple: true
options:
- Web-Frontend (what users interact with)
- Web-Backend (APIs)
- Service (scheduled tasks, alerts)
- Ansible (task execution)
- Configuration
- Database
- Docker
validations:
required: false

View File

@ -0,0 +1,94 @@
---
name: Feature request
description: You would like to have a new feature implemented
title: "Feature: "
labels: ['feature', 'triage']
body:
- type: markdown
attributes:
value: |
Please make sure to go through these steps **before opening an issue**:
- [ ] Read the [documentation](https://docs.ansible-semaphore.com/)
- [ ] Read the [troubleshooting guide](https://docs.ansible-semaphore.com/administration-guide/troubleshooting)
- [ ] Read the [documentation regarding manual installations](https://docs.ansible-semaphore.com/administration-guide/installation_manually) if you did install Semaphore that way
- [ ] Check if there are existing [issues](https://github.com/ansible-semaphore/semaphore/issues) or [discussions](https://github.com/ansible-semaphore/semaphore/discussions) regarding your topic
- type: dropdown
id: related-to
attributes:
label: Related to
description: |
To what parts of Semaphore is the feature related?
multiple: true
options:
- Web-Frontend (what users interact with)
- Web-Backend (APIs)
- Service (scheduled tasks, alerts)
- Ansible (task execution)
- Configuration
- Database
- Docker
- Other
validations:
required: true
- type: dropdown
id: impact
attributes:
label: Impact
description: |
What impact would the feature have for Semaphore users?
multiple: false
options:
- nice to have
- nice to have for enterprise usage
- better user experience
- security improvements
- major improvement to user experience
- must have for enterprise usage
- must have
validations:
required: true
- type: textarea
id: feature
attributes:
label: Missing Feature
description: |
Describe the feature you are missing.
Why would you like to see such a feature being implemented?
validations:
required: true
- type: textarea
id: implementation
attributes:
label: Implementation
description: |
Please think about how the feature should be implemented.
What would you suggest?
How should it look and behave?
validations:
required: true
- type: textarea
id: design
attributes:
label: Design
description: |
If you have programming experience yourself:
Please provide us with an example how you would design this feature.
What edge-cases need to be covered?
Are there relations to other components that need to be though of?
validations:
required: false

169
.github/ISSUE_TEMPLATES/problem.yml vendored Normal file
View File

@ -0,0 +1,169 @@
---
name: Problem
description: You have encountered problems when using Semaphore
title: "Problem: "
labels: ['problem', 'triage']
body:
- type: markdown
attributes:
value: |
Please make sure to go through these steps **before opening an issue**:
- [ ] Read the [documentation](https://docs.ansible-semaphore.com/)
- [ ] Read the [troubleshooting guide](https://docs.ansible-semaphore.com/administration-guide/troubleshooting)
- [ ] Read the [documentation regarding manual installations](https://docs.ansible-semaphore.com/administration-guide/installation_manually) if you don't use docker
- [ ] Check if there are existing [issues](https://github.com/ansible-semaphore/semaphore/issues) or [discussions](https://github.com/ansible-semaphore/semaphore/discussions) regarding your topic
- type: textarea
id: problem
attributes:
label: Issue
description: |
Describe the problem you encountered and tell us what you would have expected to happen
validations:
required: true
- type: dropdown
id: impact
attributes:
label: Impact
description: |
What parts of Semaphore are impacted by the problem?
multiple: true
options:
- Web-Frontend (what users interact with)
- Web-Backend (APIs)
- Service (scheduled tasks, alerts)
- Ansible (task execution)
- Configuration
- Database
- Docker
- Semaphore Project
- Other
validations:
required: true
- type: dropdown
id: install-method
attributes:
label: Installation method
description: |
How did you install Semaphore?
multiple: false
options:
- Docker
- Package
- Binary
- Snap
validations:
required: true
- type: dropdown
id: browsers
attributes:
label: Browser
description: |
If the problem occurs in the Semaphore WebUI - in what browsers do you see it?
multiple: true
options:
- Firefox
- Chrome
- Safari
- Microsoft Edge
- Opera
- type: textarea
id: version-semaphore
attributes:
label: Semaphore Version
description: |
What version of Semaphore are you running?
> Command: `semaphore version`
validations:
required: true
- type: textarea
id: version-ansible
attributes:
label: Ansible Version
description: |
If your problem occurs when executing a task:
> What version of Ansible are you running?
> Command: `ansible --version`
If your problem occurs when executing a specific Ansible Module:
> Provide the Ansible Module versions!
> Command: `ansible-galaxy collection list`
render: bash
validations:
required: false
- type: textarea
id: logs
attributes:
label: Logs & errors
description: |
Provide logs and error messages you have encountered!
Logs of the service:
> Docker command: `docker logs <container-name>`
> Systemd command: `journalctl -u <serivce-name> --no-pager --full -n 250`
If the error occurs in the WebUI:
> please add a screenshot
> check your browser console for errors (`F12` in most browsers)
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: textarea
id: manual-installation
attributes:
label: Manual installation - system information
description: |
If you have installed Semaphore using the package or binary:
Please share your operating system & -version!
> Command: `uname -a`
What reverse proxy are you using?
validations:
required: false
- type: textarea
id: config
attributes:
label: Configuration
description: |
Please provide Semaphore configuration related to your problem - like:
* Config file options
* Environment variables
* WebUI configuration
* Task templates
* Inventories
* Environment
* Repositories
* ...
validations:
required: false
- type: textarea
id: additional
attributes:
label: Additional information
description: |
Do you have additional information that could help troubleshoot the problem?
validations:
required: false

45
.github/ISSUE_TEMPLATES/question.yml vendored Normal file
View File

@ -0,0 +1,45 @@
---
name: Question
description: You have a question on how to use Semaphore
title: "Question: "
labels: ['question', 'triage']
body:
- type: markdown
attributes:
value: |
Please make sure to go through these steps **before opening an issue**:
- [ ] Read the [documentation](https://docs.ansible-semaphore.com/)
- [ ] Read the [troubleshooting guide](https://docs.ansible-semaphore.com/administration-guide/troubleshooting)
- [ ] Read the [documentation regarding manual installations](https://docs.ansible-semaphore.com/administration-guide/installation_manually) if you did install Semaphore that way
- [ ] Check if there are existing [issues](https://github.com/ansible-semaphore/semaphore/issues) or [discussions](https://github.com/ansible-semaphore/semaphore/discussions) regarding your topic
- type: textarea
id: question
attributes:
label: Question
validations:
required: true
- type: dropdown
id: related-to
attributes:
label: Related to
description: |
To what parts of Semaphore is the question related? (if any)
multiple: true
options:
- Web-Frontend (what users interact with)
- Web-Backend (APIs)
- Service (scheduled tasks, alerts)
- Ansible (task execution)
- Configuration
- Database
- Documentation
- Docker
validations:
required: false

View File

@ -133,7 +133,7 @@ func (p *TaskPool) Run() {
msg := "Task " + strconv.Itoa(task.Task.ID) + " added to queue"
task.Log(msg)
log.Info(msg)
task.updateStatus()
task.saveStatus()
})
case <-ticker.C: // timer 5 seconds

View File

@ -69,7 +69,7 @@ func (t *TaskRunner) setStatus(status db.TaskStatus) {
t.Task.Status = status
t.updateStatus()
t.saveStatus()
if status == db.TaskFailStatus {
t.sendMailAlert()
@ -81,7 +81,7 @@ func (t *TaskRunner) setStatus(status db.TaskStatus) {
}
}
func (t *TaskRunner) updateStatus() {
func (t *TaskRunner) saveStatus() {
for _, user := range t.users {
b, err := json.Marshal(&map[string]interface{}{
"type": "update",
@ -142,7 +142,7 @@ func (t *TaskRunner) run() {
now := time.Now()
t.Task.End = &now
t.updateStatus()
t.saveStatus()
t.createTaskEvent()
}()