# security-scan-test

Deployed from **https://github.com/GoogleCloudPlatform/microservices-demo** via the Backstage Hello Demo template.

| Property | Value |
|---|---|
| **Environment** | `dev` |
| **Namespace** | `demo-apps` |
| **ArgoCD Project** | `` |
| **Branch** | `main` |
| **Observability** | Enabled (OpenTelemetry) |

## Quick Links

- **Repository**: [https://gitea.kyndemo.live/validate/security-scan-test](https://gitea.kyndemo.live/validate/security-scan-test)
- **ArgoCD**: [https://argocd.kyndemo.live/applications/security-scan-test](https://argocd.kyndemo.live/applications/security-scan-test)
- **Live App**: [https://security-scan-test.kyndemo.live](https://security-scan-test.kyndemo.live)

- **Grafana Dashboard**: [https://grafana.kyndemo.live/d/otel-app-observability-v2/...?var-app=security-scan-test](https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=security-scan-test)


## Architecture

This service was scaffolded using the **Application Migration Factory** Backstage template.

**Deployment flow:**

1. Source cloned from `https://github.com/GoogleCloudPlatform/microservices-demo`
2. Catalog entity and CI workflows overlaid by Backstage

3. The Watcher scanned the repository and injected OpenTelemetry auto-instrumentation via Kustomize overlay

4. ArgoCD Application created targeting the `demo-apps` namespace
5. ArgoCD continuously syncs from the `main` branch

**ArgoCD sync path:** `overlays/otel`

## Development Workflow

```bash
git clone https://gitea.kyndemo.live/validate/security-scan-test.git
cd security-scan-test
# make changes, then:
git add . && git commit -m "your change" && git push origin main
```

ArgoCD monitors the repository and automatically syncs changes to the `demo-apps` namespace.

## Rollback

To roll back to a previous version:

1. Open the [ArgoCD UI](https://argocd.kyndemo.live/applications/security-scan-test)
2. Click **History and Rollback**
3. Select the desired revision and click **Rollback**

Alternatively, revert the commit in Git and push — ArgoCD will auto-sync the rollback.


## Observability

This service has OpenTelemetry auto-instrumentation enabled. Traces, metrics, and logs are exported to the OTel Collector and visualised in Grafana.

**Viewing telemetry:**

- Open the [Grafana Dashboard](https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=security-scan-test)
- Filter by `app=security-scan-test` to see service-specific data
- Check the **Alerts** tab in Backstage for any firing Grafana alerts

**OTel Collector endpoint:** `http://otel-collector.monitoring.svc.cluster.local:4318`


## SLOs and Monitoring

Define your service level objectives here once the service is stable:

| SLI | Target | Dashboard |
|---|---|---|
| Availability | 99.9% | [Grafana](https://grafana.kyndemo.live) |
| Latency (p99) | < 500ms | [Grafana](https://grafana.kyndemo.live) |
| Error rate | < 1% | [Grafana](https://grafana.kyndemo.live) |
