argoproj-labs / argoproj-labs/appsource
Notifications for Applications created by AppSource
- Dominant language
- Go
- Stars
- 25
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
# Summary
We can utilize the pre-existing Notifications Engine to add a notifications field to the AppSource instance — so that Dev Teams can be notified about what is happening with their applications.
# Motivation
Dev teams can stay informed about the state of their Applications through notifications.
# Proposal
We add a optional `notifications.channel` field to the AppSource instance that will add an annotation to the Application within the Application Create Request made by the controller.
Here is an example AppSource instance manifest:
```yaml
apiVersion: argoproj.io/v1alpha1
kind: AppSource
metadata:
name: appsource-sample1
namespace: my-project-us-west-2
spec:
path: kustomize-guestbook
# New Field
notifications.channel: my_channel
repoURL: https://github.com/argoproj/argocd-example-apps
```
This is the Application it would create:
```yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
annotations:
# New annotation
notifications.argoproj.io/subscribe.on-sync-succeeded.slack: my_channel
. . .
```
Contributor guide
Research direction
No files or tests are named. Start by tracing the AppSource-to-Application Create Request path and the pre-existing Notifications Engine; done means an optional notifications.channel value produces the specified Application annotation without changing behavior when omitted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100