3.5.6.2.2. --inlined 플래그로 odo 링크 사용
--inlined
플래그를 odo link
명령과 함께 사용하면 바인딩 정보를 삽입하는 플래그 없이 odo link
명령과 동일한 효과가 있습니다. 그러나 미묘한 차이점은 위의 경우 kubernetes/
디렉터리에는 두 개의 매니페스트 파일이 있습니다. 하나는 Postgres 서비스용이고 다른 하나는 백엔드 구성 요소와 이 서비스 간의 링크에 대한 것입니다. 그러나 --inlined
플래그를 전달할 때 odo
는 YAML 매니페스트를 저장하기 위해 kubernetes/
디렉터리에 파일을 생성하지 않고 devfile.yaml
파일에 인라인을 저장합니다.
이를 확인하려면 먼저 PostgreSQL 서비스에서 구성 요소를 연결 해제합니다.
$ odo unlink PostgresCluster/hippo
출력 예:
✓ Successfully unlinked component "backend" from service "PostgresCluster/hippo" To apply the changes, please use `odo push`
클러스터에서 연결을 해제하려면 odo push
를 실행합니다. 이제 kubernetes/
디렉터리를 검사하면 하나의 파일만 표시됩니다.
$ ls kubernetes odo-service-hippo.yaml
다음으로 --inlined
플래그를 사용하여 링크를 생성합니다.
$ odo link PostgresCluster/hippo --inlined
출력 예:
✓ Successfully created link between component "backend" and service "PostgresCluster/hippo" To apply the link, please use `odo push`
--inlined
플래그를 생략하는 절차와 같이 클러스터에서 생성되려면 odo push
를 실행해야 합니다. odo
는 devfile.yaml
에 구성을 저장합니다. 이 파일에서 다음과 같은 항목을 볼 수 있습니다.
kubernetes: inlined: | apiVersion: binding.operators.coreos.com/v1alpha1 kind: ServiceBinding metadata: creationTimestamp: null name: backend-postgrescluster-hippo spec: application: group: apps name: backend-app resource: deployments version: v1 bindAsFiles: false detectBindingResources: true services: - group: postgres-operator.crunchydata.com id: hippo kind: PostgresCluster name: hippo version: v1beta1 status: secret: "" name: backend-postgrescluster-hippo
이제 odo unlink PostgresCluster/hippo
를 실행하는 경우odo
는 먼저 devfile.yaml
에서 링크 정보를 제거한 다음 후속 odo push
는 클러스터에서 링크를 삭제합니다.