Skip to content

devxp-tech/backstage

Repository files navigation

Backstage

main Quality Gate Status App Status

Backstage - IDP

Environments you need before start

Name Where to get?
GITHUB_ACCESS_TOKEN Generate a new personal access token in GIthub Secure page
AUTH_GITHUB_CLIENT_ID Get in Github app ID
AUTH_GITHUB_CLIENT_SECRET Open a tiket to Devxp to share this value
SONARQUBE_TOKEN Create a Sonarqube token using this documentation

All environments above MUST be exported in your bash context like below:

# .bashrc or .zshrc
export GITHUB_ACCESS_TOKEN='YOUR-TOKEN-HERE'
export AUTH_GITHUB_CLIENT_ID='YOUR-TOKEN-HERE'
export AUTH_GITHUB_CLIENT_SECRET='YOUR-TOKEN-HERE'
export SONARQUBE_TOKEN='YOUR-TOKEN-HERE'

Setup your hosts

You'll need to create an entry to your /etc/hosts to specify backstage.local like below:

# /etc/hosts

# ...
127.0.0.1 backstage.local
#...

🚀 Start project

You'll need Docker and docker-compose installed before you continue!

Once all you need is in your bash context, just run the commands below:

docker-compose run --rm app yarn # to install node_modules
docker-compose up -d app # to up the backstage application

Backstage in develop mode will be available in http://backstage.local:3000 and it's using GitHub SSO integration

🆙 Backstage Update

docker-compose run --rm app bash
yarn backstage-cli versions:bump

🚦 Work Flux

graph TD;
    Dev-->Backstage;
    Backstage--create-->devxp-app;
    devxp-app-->golang;
    devxp-app-->python;
    devxp-app-->node;
    golang--new-app-->backstage-catalog;
    backstage-catalog--fetch-->github/devxp-tech/template-golang;
    backstage-catalog--fetch-->kubernetes-skelleton;
    backstage-catalog--push-->github/devxp-tech/new-app;
    kubernetes-skelleton--PullRequest-->ArgoCD;
    github/devxp-tech/new-app--workflow-->devxp-tech/.github/workflows;
    ArgoCD--pull-->helm-charts/devxp-app;
    ArgoCD--deploy-->Kubernetes;
    devxp-tech/.github/workflows--push/docker-image-->ghcr.github.com/devxp-tech;
    Kubernetes--pull/docker-image-->ghcr.github.com/devxp-tech;
    Kubernetes-->new-app;

🧩 References

✨ Contributions

We ❤️ contributions big or small. See our guide on how to get started.

Thanks to all our contributors!

Made with 💜 by DevXP-Tech.