Programming 99

Backstage) Custom Relation, Custom Entity 적용하기

Backstage의 Entity 종류는 9 가지가 있고, 각자 고유한 정의를 따른다. Backstage 내의 Entity와 Relation은 Core library에서 어느정도 정의해서 제공하고 있다. 그러다 보니 단순이 app-config.yaml에서 allow되는 Entity 목록에 완전히 새로운걸 추가한다던지 그런 수준의 yaml만 수정해서는 새로운 Entity를 만들수 없다. Kind: ComponentKind: TemplateKind: APIKind: GroupKind: UserKind: ResourceKind: SystemKind: DomainKind: Location Descriptor Format of Catalog Entities | Backstage Software Catalog an..

Programming/MSA 2026.02.10

Backstage) Relation - Catalog Graph 의 가시성 향상시키기

이것이 기존의 Catalog Graph 인데, 모든 Kind가 같은 색상으로 아이콘으로 구분되다 보니 가시성이 떨어진다. Custom UI 를 사용하여 가시성을 향상시킬수 있다. 설명은 공식적으로 여기에 소개되어 있다.https://github.com/backstage/backstage/blob/master/plugins/catalog-graph/README.md#customizing-the-ui backstage/plugins/catalog-graph/README.md at master · backstage/backstageBackstage is an open framework for building developer portals - backstage/backstagegithub.com 수정사항은 ..

Programming/MSA 2026.01.30

Backstage) Install 4. TechDocs 에서 PlantUML Plugin 사용하기

https://backstage.io/docs/features/techdocs/ TechDocs Documentation | Backstage Software Catalog and Developer PlatformTechDocs is Spotify’s homegrown docs-like-code solution built directly into Backstagebackstage.io TechDocs는 Spotify가 자체 개발한 문서형 코드 솔루션으로, Backstage에 내장되어 있습니다. 엔지니어는 마크다운 파일로 문서를 작성하고, 이 파일은 코드와 함께 저장되며, 간단한 설정만으로 Backstage에서 보기 좋은 문서 사이트를 만들 수 있습니다. 이 TechDocs를 사용하는데 있어서 다음과 같은..

Programming/MSA 2025.12.01

Backstage) Install 2. Github App 설치

전반적인 절차는 아래의 공식문서를 따르면 된다. 하지만 하다보면 군데 군데 막힌다. https://backstage.spotify.com/learn/standing-up-backstage/standing-up-backstage/1-intro/ Standing Up Backstage | Spotify for BackstageLearn how to set up and deploy your Backstage app, how to add authentication, and how to connect to your source control systembackstage.spotify.com 막혔던 부분을 기록한다. Creating the Backstage applicationnpx @backstage/creat..

Programming/MSA 2025.11.16

Backstage) Install 1. Github App 설치

아래의 과정을 통해 획득한 Key는 모두 잘 보관한다.GitHub Authentication Setup1. Create GitHub OAuth App in your organization settings 2. Configure Homepage URL and Authorization callback URL:- 로컬개발시에는 localhost 를 callback으로 한다. http://localhost:7007/api/auth/github/handler/frame - 만약 정말 서버에 provisioning을 한다면 그에 응하는 URL을 callback으로 한다. https://.spotifyportal.com/api/auth/github/handler/frame 3. Copy clientId ..

Programming/MSA 2025.11.10

Backstage) Internal Developer Portal 에 대해서

더보기앞으로 한동안은 Backstage에 대한 여정을 기록하려고 한다. 현재 나의 프로젝트는 완전한 MSA를 지향하여 시스템을 구축하고 있다. 여기서 많은 거버넌스적인, 사일로 이슈들이 발생하며 이를 한번에 극복할 수 있는것이 Portal Concept라고 믿는다. 우선, Internal Developer Portal이란 무엇인가? 내부 개발자 플랫폼(IDP)은 플랫폼 팀이 골든 패스(Golden Path)를 구축하고 개발자 셀프서비스를 지원하기 위해 구축합니다. IDP는 다양한 기술과 도구로 구성되어 있으며, 맥락과 기반 기술을 추상화하지 않고도 개발자의 인지 부담을 줄이는 방식으로 통합됩니다. 플랫폼 팀은 모범 사례를 준수하여 플랫폼을 하나의 제품으로 취급하고 사용자 연구를 기반으로 구축하며, 유지..

Programming/MSA 2025.11.10

Netflix ) Netflix’s Key-Value Data Abstraction Layer

넷플릭스는 Key-Value String Data의 영속성 Layer로 어떠한것을 사용했는지, 어떤 비즈니즈 요구사항에 적용했는지 리서치 해보았다. 관련 포스팅https://netflixtechblog.com/introducing-netflixs-key-value-data-abstraction-layer-1ea8a0a11b30 Introducing Netflix’s Key-Value Data Abstraction LayerVidhya Arvind, Rajasekhar Ummadisetty, Joey Lynch, Vinay Chellanetflixtechblog.com https://netflixtechblog.com/introducing-netflix-timeseries-data-abstraction-l..

Programming/MSA 2025.01.13