🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@bifos/nhncloud-cli

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@bifos/nhncloud-cli - npm Package Compare versions

Comparing version
0.4.0
to
0.5.0
+1
-1
package.json
{
"name": "@bifos/nhncloud-cli",
"version": "0.4.0",
"version": "0.5.0",
"description": "CLI tool for NHN Cloud services — AI agent & terminal friendly",

@@ -5,0 +5,0 @@ "keywords": [

# nhncloud-cli
NHN Cloud 서비스를 AWS CLI 방식으로 호출하는 통합 CLI.
현재 `configure`, `logncrash search/send` (Log & Crash 로그 검색·전송), `deploy` (배포·바이너리 조회·업로드·다운로드), `instance` (Compute 인스턴스 목록·발급·전원 제어·타입 변경·키페어 관리·이미지·가용성 영역 조회·볼륨 연결 포함), `network` (VPC·서브넷 목록 조회), `volume` (Block Storage 볼륨 목록·조회·생성) 명령을 지원한다.
현재 `configure`, `logncrash search/send` (Log & Crash 로그 검색·전송), `deploy` (배포·바이너리 조회·업로드·다운로드), `instance` (Compute 인스턴스 목록·발급·전원 제어·타입 변경·키페어 관리·이미지·가용성 영역 조회·볼륨 연결 포함), `network` (VPC·서브넷 목록 조회), `volume` (Block Storage 볼륨 목록·조회·생성), `ncr` (NHN Container Registry 레지스트리 목록·조회·이미지 목록·태그 목록) 명령을 지원한다.

@@ -20,3 +20,3 @@ ## 설치

- profile → UAK(id/secret) → logncrash appkey/secret → iaas 자격증명 순으로 입력한다.
- profile → UAK(id/secret) → logncrash appkey/secret → iaas 자격증명 → ncr appkey 순으로 입력한다.
- 저장 전 연결 테스트를 자동으로 수행한다 (`--no-verify` 로 생략 가능).

@@ -441,2 +441,54 @@ - CI/자동화는 flag 로 비대화형 설정이 가능하다.

### NHN Container Registry (NCR)
NCR Management API 로 레지스트리를 조회한다.
인증은 공통 UAK(`X-TC-AUTHENTICATION-ID/SECRET` 정적 헤더)를 재사용하며 OAuth 토큰 교환이 없다.
appKey 는 NHN Cloud 콘솔 → Container Registry 서비스에서 확인한다.
```bash
# ncr appkey 설정 (비대화형)
nhncloud configure --ncr-appkey <appkey>
# 레지스트리 목록 조회
nhncloud ncr list --app-key <appkey>
# region 지정 (기본: kr1)
nhncloud ncr list --region kr2 --app-key <appkey>
# JSON 출력
nhncloud ncr list --app-key <appkey> --json
# 단일 레지스트리 조회 (이름 또는 ID)
nhncloud ncr get <registry-name> --app-key <appkey>
```
appKey 를 `nhncloud configure --ncr-appkey <appkey>` 로 저장해 두면 `--app-key` 없이도 호출할 수 있다.
```bash
# configure 로 저장 후 --app-key 생략
nhncloud configure --ncr-appkey <appkey>
nhncloud ncr list
nhncloud ncr get <registry-name>
```
이미지(repository)·태그는 레지스트리 데이터플레인 Harbor REST API 를 직접 호출한다.
UAK 를 Basic Auth 로 사용하며 추가 설정은 없다.
```bash
# 이미지(repository) 목록 조회
nhncloud ncr images <registry>
# region 지정
nhncloud ncr images <registry> --region kr2
# JSON 출력
nhncloud ncr images <registry> --json
# 특정 이미지의 태그 목록 조회
nhncloud ncr tags <registry> <repository>
# JSON 출력 (태그·push_time·size)
nhncloud ncr tags <registry> <repository> --json
```
## 개발

@@ -450,2 +502,3 @@

node dist/index.js logncrash search --help
node dist/index.js ncr --help
```
---
name: nhncloud-cli
description: NHN Cloud 서비스 CLI. 자격증명 설정(configure), Log & Crash 로그 검색·전송(logncrash search/send), Deploy 배포 실행·바이너리 그룹·바이너리 목록 조회·업로드·다운로드(deploy upload/download), Compute 인스턴스 관리(instance — 목록·발급·전원 제어·타입 변경(resize/resize-confirm/resize-revert)·키페어·이미지·가용성 영역 조회·볼륨 연결(instance volume attach/detach, instance volumes)), VPC·서브넷 조회(network list/subnet list), Block Storage 볼륨 관리(volume list/get/create), Floating IP 관리(floatingip list/create/delete) 등 NHN Cloud PaaS API 를 터미널·AI 에이전트에서 호출한다.
description: NHN Cloud 서비스 CLI. 자격증명 설정(configure), Log & Crash 로그 검색·전송(logncrash search/send), Deploy 배포 실행·바이너리 그룹·바이너리 목록 조회·업로드·다운로드(deploy upload/download), Compute 인스턴스 관리(instance — 목록·발급·전원 제어·타입 변경(resize/resize-confirm/resize-revert)·키페어·이미지·가용성 영역 조회·볼륨 연결(instance volume attach/detach, instance volumes)), VPC·서브넷 조회(network list/subnet list), Block Storage 볼륨 관리(volume list/get/create), Floating IP 관리(floatingip list/create/delete), NHN Container Registry 레지스트리·이미지·태그 조회(ncr list/get/images/tags) 등 NHN Cloud PaaS API 를 터미널·AI 에이전트에서 호출한다.
---

@@ -9,3 +9,3 @@

NHN Cloud PaaS 서비스를 AWS CLI 방식으로 호출하는 TypeScript CLI.
`configure`, `logncrash search/send`, `deploy`, `instance` (전원 제어·keypair·볼륨 연결 포함), `network` (VPC·서브넷 조회), `volume` (Block Storage 볼륨 목록·조회·생성), `floatingip` (공인 IP 관리) 명령을 지원한다.
`configure`, `logncrash search/send`, `deploy`, `instance` (전원 제어·keypair·볼륨 연결 포함), `network` (VPC·서브넷 조회), `volume` (Block Storage 볼륨 목록·조회·생성), `floatingip` (공인 IP 관리), `ncr` (NHN Container Registry 레지스트리·이미지·태그 조회) 명령을 지원한다.

@@ -46,2 +46,3 @@ ## 설치

| `--logncrash-secret <secret>` | logncrash secret |
| `--ncr-appkey <key>` | NCR(Container Registry) appkey |
| `--no-verify` | 연결 테스트 생략 |

@@ -106,2 +107,9 @@

| Log & Crash 로그 전송 | `nhncloud logncrash send --body "<메시지>" --level INFO` |
| NCR 레지스트리 목록 조회 | `nhncloud ncr list --app-key <appkey>` |
| NCR 레지스트리 목록 (JSON 파싱용) | `nhncloud ncr list --app-key <appkey> --json` |
| NCR 단일 레지스트리 조회 | `nhncloud ncr get <registry-name> --app-key <appkey>` |
| NCR 이미지(repository) 목록 조회 | `nhncloud ncr images <registry>` |
| NCR 이미지 목록 (JSON) | `nhncloud ncr images <registry> --json` |
| NCR 태그 목록 조회 | `nhncloud ncr tags <registry> <repository>` |
| NCR 태그 목록 (JSON) | `nhncloud ncr tags <registry> <repository> --json` |

@@ -630,1 +638,74 @@ ## logncrash search 옵션

| Floating IP API 오류 | 1 (API_ERROR) |
## ncr — NHN Container Registry 레지스트리·이미지·태그 조회
NCR Management API 로 레지스트리(Harbor 프로젝트)를 조회한다.
이미지(repository)·태그는 레지스트리 데이터플레인 Harbor REST API 를 직접 호출한다.
두 경로 모두 공통 UAK 를 사용하므로 추가 설정은 없다.
appKey 는 `--app-key` 옵션 또는 `nhncloud configure --ncr-appkey <appkey>` 로 profile 에 저장한 값을 자동 사용한다.
### 의도 → 커맨드 매핑
| 의도 | 커맨드 |
|------|--------|
| 레지스트리 목록 조회 | `nhncloud ncr list --app-key <appkey>` |
| 레지스트리 목록 (JSON) | `nhncloud ncr list --app-key <appkey> --json` |
| 다른 region 조회 (기본 kr1) | `nhncloud ncr list --region kr2 --app-key <appkey>` |
| 단일 레지스트리 조회 | `nhncloud ncr get <registry> --app-key <appkey>` |
| appkey 저장 후 생략 | `nhncloud configure --ncr-appkey <appkey>` → `nhncloud ncr list` |
| 이미지(repository) 목록 조회 | `nhncloud ncr images <registry>` |
| 이미지 목록 (JSON) | `nhncloud ncr images <registry> --json` |
| 특정 이미지의 태그 목록 조회 | `nhncloud ncr tags <registry> <repository>` |
| 태그 목록 (JSON) | `nhncloud ncr tags <registry> <repository> --json` |
### ncr list / get 옵션
| 옵션 | 설명 |
|------|------|
| `--region <region>` | NCR region (기본: `kr1`). 지원: `kr1`, `kr2`, `kr3` |
| `--app-key <key>` | NCR appKey (profile 의 `ncr.appkey` 보다 우선) |
| `--profile <name>` | 사용할 profile 이름 |
### ncr images / ncr tags 옵션
| 옵션 | 설명 |
|------|------|
| `--region <region>` | NCR region (기본: `kr1`) |
| `--app-key <key>` | NCR appKey (profile 의 `ncr.appkey` 보다 우선) |
| `--profile <name>` | 사용할 profile 이름 |
### 체이닝 예시
```bash
# 레지스트리 목록 (이름만 추출)
nhncloud ncr list --app-key <appkey> --json | jq -r '.[].name'
# 레지스트리 수 확인
nhncloud ncr list --app-key <appkey> --json | jq length
# 단일 레지스트리 상세 조회
nhncloud ncr get <registry> --app-key <appkey> --json
# 이미지 목록 (이름만 추출)
nhncloud ncr images <registry> --json | jq -r '.[].repository'
# 이미지별 artifact 수 확인
nhncloud ncr images <registry> --json | jq '.[] | {repository, artifact_count}'
# 특정 이미지의 태그 목록
nhncloud ncr tags <registry> <repository> --json | jq -r '.[].tag'
# 가장 최근 push 태그 확인
nhncloud ncr tags <registry> <repository> --json | jq 'sort_by(.push_time) | last | .tag'
```
### ncr 에러 코드
| 상황 | exit code |
|------|-----------|
| UAK 누락·불완전 | 4 (CONFIG_ERROR) |
| NCR appkey 미설정 (`--app-key` 미지정 + configure 미설정) | 4 (CONFIG_ERROR) |
| 지원하지 않는 region | 3 (PARAM_ERROR) |
| registry / repository 인수 공백·빈값 | 3 (PARAM_ERROR) |
| UAK 인증 실패 (401/403) | 2 (AUTH_ERROR) |
| NCR API 오류 | 1 (API_ERROR) |

Sorry, the diff of this file is too big to display