ServiceNow SDK CLI

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기13분
  • 명령줄 인터페이스(CLI)를 ServiceNow SDK 사용하여 로컬 애플리케이션과 인스턴스의 애플리케이션 간 변경을 관리합니다.

    시스템의 명령줄 도구에서 now-sdk를 입력하여 CLI를 시작하고 사용 가능한 명령 목록을 반환하거나 now-sdk [command]를 입력하여 .ServiceNow SDK

    CLI에는 다음과 같은 명령과 전역 옵션이 포함되어 있습니다.

    표 1. 전역 옵션
    옵션 설명
    --버전 CLI 버전을 반환합니다.
    --도움말, -h 명령, 하위 명령 및 매개변수에 대한 정보를 반환합니다.
    --디버그, -d 명령으로 생성된 디버그 로그를 반환합니다.

    업그레이드

    릴리스의 인스턴스에 사용하려면 최신 ServiceNow SDK 버전으로 업그레이드하십시오 Yokohama .

    업그레이드해도 ServiceNow SDK 이전에 만들었거나 .ServiceNow SDK

    upgrade 명령의 구조는 다음과 같습니다.
    now-sdk upgrade [--debug <flag>]
    예:
    now-sdk upgrade --debug true

    인증

    인스턴스에 인증하고 시스템에서 인스턴스에 액세스하기 위한 사용자 자격 증명을 저장, 업데이트 또는 확인합니다.

    auth 명령에는 자격 증명 추가, 자격 증명 삭제, 자격 증명 나열 및 기본적으로 사용할 자격 증명 설정을 위한 매개변수가 있습니다.

    추가

    시스템의 장치 키체인 또는 자격 증명 관리자에 자격 증명을 저장합니다.

    auth 명령에는 --add 매개변수가 있는 다음 구조가 있습니다.
    now-sdk auth [--add <instance url>] [--type <auth method>] [--alias <alias>]
    표 2. 필수 매개변수
    매개변수 유형 설명 기본값
    --더하다 문자열 인증 자격 증명을 저장할 인스턴스 이름 또는 URL입니다.
    표 3. 선택적 매개변수
    매개변수 유형 설명 기본값
    --형 문자열 새 인증 자격 증명에 사용할 인증 유형 [선택 사항: "기본", "oauth"]
    --별명 문자열 호스트 및 사용자 자격 증명의 고유 식별자입니다.

    별칭은 create, convert, fetchdeploy 명령을 사용한 인증에 사용할 수 있습니다.

    예:
    now-sdk auth --add https://myinstance.service-now.com --type oauth --alias devuser1

    삭제

    시스템의 장치 키체인 또는 자격 증명 관리자에서 자격 증명을 제거합니다.

    auth 명령은 --delete 매개변수와 함께 다음과 같은 구조를 갖습니다.
    now-sdk auth [--delete <alias>]
    표 4. 필수 매개변수
    매개변수 유형 설명 기본값
    --삭제하다 문자열 호스트 및 사용자 자격 증명의 고유 식별자입니다.
    예:
    now-sdk auth --delete devuser1

    목록

    시스템의 장치 키체인 또는 자격 증명 관리자에 저장된 자격 증명을 봅니다. 암호 및 인증 코드는 반환되지 않습니다.

    auth 명령은 --list 매개변수와 함께 다음과 같은 구조를 갖습니다.
    now-sdk auth [--list]
    표 5. 필수 매개변수
    매개변수 유형 설명 기본값
    --목록 문자열 사용 가능한 모든 인증 자격 증명을 나열합니다
    예:
    now-sdk auth --list

    사용

    기본적으로 명령에서 사용할 자격 증명을 설정합니다.

    auth 명령은 --use 매개변수와 함께 다음과 같은 구조를 갖습니다.
    now-sdk auth [--use <alias>]
    표 6. 필수 매개변수
    매개변수 유형 설명 기본값
    --쓰다 문자열 호스트 및 사용자 자격 증명의 고유 식별자입니다.
    예:
    now-sdk auth --use devuser1

    초기화

    사용자 지정 범위가 지정된 애플리케이션을 만들거나 인스턴스 또는 로컬 디렉터리에서 기존 범위가 지정된 애플리케이션을 변환하여 소스 코드로 개발을 지원할 수 있습니다. 애플리케이션이 현재 디렉터리에 추가됩니다.

    init 명령의 구조는 다음과 같습니다.
    now-sdk init [--from <sysID or path>] [--appName <name>] [--packageName <name>] [--scopeName <name>] [--auth <alias>]
    표 7. 선택적 매개변수
    매개변수 유형 설명 기본값
    --보낸 사람 문자열 인스턴스에 있는 애플리케이션의 sys_id 또는 소스 코드에서 개발을 지원하기 위해 변환할 애플리케이션이 포함된 디렉터리의 경로입니다.

    애플리케이션을 변환하면 로컬에서 ServiceNow SDK 사용하는 데 필요한 파일과 디렉터리가 추가되고 프로젝트 형식에 따라 애플리케이션 메타데이터 ServiceNow Fluent 가 소스 코드 또는 XML 파일로 다운로드됩니다. 애플리케이션은 빌드하여 인스턴스에 배포할 때까지 인스턴스에서 변경되지 않습니다. 변환된 애플리케이션을 배포한 후 사용자 지정 애플리케이션 기록 [sys_app]의 패키지 JSON 필드에 애플리케이션의 package.json 파일 경로가 포함됩니다.

    --appName 문자열 애플리케이션의 이름입니다.

    --interactive 매개 변수가 false로 설정된 경우 이 매개 변수가 필요합니다.

    --패키지 이름 문자열 package.json 파일에 사용되는 애플리케이션 패키지의 이름입니다.패키지 이름은 NPM 패키지 명명 표준을 준수해야 합니다.
    scopeName 문자열 애플리케이션의 범위입니다.

    범위 이름은 인스턴스에서 고유해야 하며, x_<prefix>로 시작해야 하고, 18자 이하여야 합니다. 자세한 내용은 네임스페이스 식별자 문서를 참조하십시오.

    --interactive 매개 변수가 false로 설정된 경우 이 매개 변수가 필요합니다.

    --auth, -a 문자열 인스턴스를 인증하는 데 사용할 자격 증명의 별칭입니다. 설정된 경우 기본 별칭입니다.
    예:
    now-sdk init --from dbce0f6a3b3fda107b45b5d355e45af6 --appName Example App --packageName example-app --scopeName x_snc_example --auth devuser1

    변압하다

    업데이트 세트 또는 로컬 디렉터리 ServiceNow Fluent 의 애플리케이션 메타데이터(XML)를 소스 코드로 변환합니다.

    변환 명령의 구조는 다음과 같습니다.
    now-sdk transform [--from <sys_id or path>] [--source <package path>] [--preview <flag>]
    표 8. 선택적 매개변수
    매개변수 유형 설명 기본값
    --보낸 사람 문자열 인스턴스에 있는 업데이트 세트의 sys_id 또는 코드로 변환할 ServiceNow Fluent 메타데이터 XML이 포함된 디렉터리 또는 파일의 경로입니다.
    --근원 문자열 애플리케이션의 package.json 파일 경로입니다.

    package.json 애플리케이션의 기본 디렉터리에 있어야 합니다.

    현재 작업 디렉터리
    --미리 보기 부울 변경 사항을 저장하지 않고 명령줄에서 변환된 ServiceNow Fluent 코드를 미리 봅니다. 거짓

    예:

    now-sdk transform --from metadata/update --source /path/to/package --preview true

    변환

    기존 애플리케이션을 인스턴스에서 로컬로 Visual Studio Code 수정하고 애플리케이션을 인스턴스에 ServiceNow SDK배포할 수 있도록 변환합니다.

    애플리케이션을 변환하면 로컬에서 ServiceNow SDK 사용하는 데 필요한 파일과 디렉터리가 추가되고 프로젝트 형식에 따라 애플리케이션 메타데이터 ServiceNow Fluent 가 소스 코드 또는 XML 파일로 다운로드됩니다. 애플리케이션은 빌드하여 인스턴스에 배포할 때까지 인스턴스에서 변경되지 않습니다. 변환된 애플리케이션을 배포한 후 사용자 지정 애플리케이션 기록 [sys_app]의 패키지 JSON 필드에 애플리케이션의 package.json 파일 경로가 포함됩니다.

    convert 명령의 구조는 다음과 같습니다.
    now-sdk convert <scopeName> <packageName> [<directory>] [--auth <alias>] [--projectType <type>] [--template <type>]
    표 9. 필수 매개변수
    매개변수 유형 설명 기본값
    scopeName 문자열 기존 애플리케이션의 범위입니다.
    패키지 이름 문자열 package.json 파일에 사용되는 애플리케이션 패키지의 이름입니다.

    패키지 이름은 NPM 패키지 명명 표준을 준수해야 합니다.

    표 10. 선택적 매개변수
    매개변수 유형 설명 기본값
    디렉터리 문자열 애플리케이션 디렉터리 및 파일을 생성할 로컬 디렉터리입니다. 현재 작업 디렉터리
    --auth, -a 문자열 인스턴스를 인증하는 데 사용할 자격 증명의 별칭입니다. 설정된 경우 기본 별칭입니다.
    --projectType 문자열 애플리케이션 파일을 다운로드하는 방법과 기본 애플리케이션 구성을 결정하는 애플리케이션 유형입니다.
    • Fluent: 기존 애플리케이션 메타데이터가 다운로드되어 src/fluent 디렉터리의 코드로 변환됩니다ServiceNow Fluent. 기본 애플리케이션 구성은 , JavaScript 모듈 및 타사 라이브러리를 사용하도록 ServiceNow Fluent설정되어 있습니다.
      주:
      메타데이터 스냅샷[sys_metadata_link] 및 UX 자산[sys_ux_lib_asset]과 같은 제한된 수의 메타데이터 유형은 코드로 나타낼 ServiceNow Fluent 수 없으며 변환되지 않습니다.
    • 모듈: 기존 애플리케이션 메타데이터가 메타데이터 디렉터리에 메타데이터 XML로 다운로드됩니다. 기본 애플리케이션 구성은 JavaScript 모듈 및 타사 라이브러리만 사용하도록 설정되어 있습니다.
    모듈
    --템플릿, -t 문자열 모듈에서 JavaScript 또는 TypeScript를 사용할지 여부를 지정하는 옵션입니다. 이 옵션은 package.jsonnow.config.json 파일의 구성을 결정하고 TypeScript 프로젝트에 대한 tsconfig.json 파일을 추가합니다.
    • javascript : 응용 프로그램은 src / server 디렉토리에서 모듈로 .js 파일을 빌드하도록 구성되어 있습니다.
    • typescript: 애플리케이션은 src/server 디렉터리에서 모듈로 .ts 파일을 빌드하도록 구성되어 있습니다.
    자바스크립트

    예:

    now-sdk convert x_snc_example example-app /path/to/app_folder --auth user1-dev --projectType fluent --template typescript

    가져오다

    인스턴스에서 애플리케이션 메타데이터를 다운로드하고 로컬 애플리케이션의 메타데이터 XML 파일이 일치하도록 업데이트합니다.

    인스턴스에서 애플리케이션 메타데이터를 가져올 때 JavaScript 모듈에 대한 업데이트는 포함되지 않습니다.

    fetch 명령의 구조는 다음과 같습니다.
    now-sdk fetch [--directory <package path>] [--auth <alias>]
    표 11. 선택적 매개변수
    매개변수 유형 설명 기본값
    --디렉토리 문자열 애플리케이션의 경로입니다. 현재 작업 디렉터리
    --auth, -a 문자열 인스턴스를 인증하는 데 사용할 자격 증명의 별칭입니다. 설정된 경우 기본 별칭입니다.
    예:
    now-sdk fetch --auth devuser1 --directory /path/to/package

    의존성

    인스턴스에서 Glide API 및 스크립트 포함에 대한 TypeScript 유형 정의와 같은 스크립트에 대한 의존성을 다운로드합니다.

    애플리케이션에 스크립트 의존성을 포함하면 Glide API 및 스크립트 포함에 대한 자동 완성 지원이 추가됩니다. 유형 정의는 @types/@servicenow 디렉터리에 다운로드됩니다.

    dependencies 명령의 구조는 다음과 같습니다.

    now-sdk dependencies [--directory <package path>] [--auth <alias>]
    종속성을 다운로드한 후에는 유형 정의를 포함하도록 tsconfig.json 파일을 업데이트해야 합니다. 예:
    "include": [
      "src/server/**/*.ts",   
      "./@types/servicenow/glide.server.d.ts", 
      "./@types/servicenow/script-includes.server.d.ts"
    ]
    표 12. 선택적 매개변수
    매개변수 유형 설명 기본값
    --디렉토리 문자열 애플리케이션의 package.json 파일 경로입니다.

    package.json 애플리케이션의 기본 디렉터리에 있어야 합니다.

    현재 작업 디렉터리
    --auth, -a 문자열 인스턴스를 인증하는 데 사용할 자격 증명의 별칭입니다. 설정된 경우 기본 별칭입니다.
    예:
    now-sdk dependencies --directory /path/to/package --auth devuser1

    빌드

    소스 파일을 컴파일하고 설치 가능한 패키지를 생성합니다. 외부 공급업체 라이브러리 종속성은 애플리케이션과 함께 설치할 수 있는 XML 파일로 변환됩니다.

    build 명령의 구조는 다음과 같습니다.
    now-sdk build <source> [--frozenKeys <flag>]
    표 13. 선택적 매개변수
    매개변수 유형 설명 기본값
    소스 문자열 애플리케이션의 package.json 파일 경로입니다.

    package.json 애플리케이션의 기본 디렉터리에 있어야 합니다.

    현재 작업 디렉터리
    --냉동 키 부울 CI 빌드에 대해 keys.ts 파일이 최신 상태인지 확인합니다. true이고 애플리케이션 ServiceNow Fluent 코드가 변경된 경우 keys.ts 파일이 업데이트되지 않고 빌드가 실패합니다.

    keys.ts 파일은 src/fluent/generated 디렉터리에 자동으로 생성됩니다.

    거짓
    예:
    now-sdk build /path/to/package --frozenKeys true

    설치

    인스턴스에 애플리케이션을 설치하거나 업데이트합니다. install 명령을 사용하기 전에 build 명령을 사용하여 설치 가능한 패키지를 생성해야 합니다.

    install 명령의 구조는 다음과 같습니다.

    now-sdk install [--source <package path>] [--reinstall <flag>] [--auth <alias>] [--open-browser <flag>] [--info <flag>]
    표 14. 선택적 매개변수
    매개변수 유형 설명 기본값
    --근원 문자열 애플리케이션의 package.json 파일 경로입니다.

    package.json 애플리케이션의 기본 디렉터리에 있어야 합니다.

    현재 작업 디렉터리
    --다시 설치, -r 부울 인스턴스의 메타데이터를 배포 패키지의 메타데이터와 일치시키기 위해 인스턴스에서 애플리케이션을 제거하고 다시 설치하는 옵션입니다.
    경고:
    인스턴스에는 있지만 로컬 애플리케이션에는 없는 메타데이터는 제거됩니다.

    EcmaScript 모듈 [sys_module] 테이블에 필요하지 않은 이전 버전의 모듈이 있는 경우 reinstall 매개 변수(now-sdk deploy --reinstall true)를 사용하여 애플리케이션을 설치하면 테이블에서 애플리케이션 모듈의 이전 버전이 제거됩니다.

    거짓
    --auth, -a 문자열 인스턴스를 인증하는 데 사용할 자격 증명의 별칭입니다. 설정된 경우 기본 별칭입니다.
    --열다 브라우저, -b 부울 애플리케이션을 성공적으로 설치한 후 기본 브라우저에서 애플리케이션 기록을 여는 옵션입니다. 거짓
    --정보, -i 부울 업데이트된 상태 및 기록과 같은 이 애플리케이션의 최근 설치에 대한 상세 정보를 반환하는 옵션입니다. 이 매개 변수를 사용하면 애플리케이션이 설치되지 않습니다. 거짓
    예:
    now-sdk install --source /path/to/package --reinstall false --auth devuser1 --open-browser true --info true