webOS Article/0. webOS 개발 준비하기

webOS 개발시작하기1 : CLI 사용하기

하이하정 2021. 6. 26. 15:13

이번 포스팅에서는 본격적인 webOS 개발 시작하기에 앞서 CLI 사용법에 대해 다뤄보겠습니다.
webOS OSE 개발자 사이트 : Command-Line Interface User Guide 를 참고하여 작성하였습니다.

CLI란?


1. CLI란?

저희가 평소 사용하는 프로그램은 GUI로 그래픽을 통해 사용자와 컴퓨터가 정보를 주고받습니다.
그렇다면, CLI는 무엇일까요?

  • Command Line Interface 의 약자로 명령 줄 인터페이스를 뜻합니다.
  • 가상 터미널 또는 텍스트 터미널을 통해 문자열의 형태로 사용자와 컴퓨터가 상호 작용하는 방식입니다.

webOS에서는 web application을 만들기위해서 별도로 IDE(visual studio, eclipse 등등)를 제공하지는 않고, CLI tool을 이용해서 우리가 만든 source code를 ipk파일을 패키지로 묶어주고, webOS device들을 설치하고, 제어해야합니다. 이러한 역할을 할 수 있도록 해주는 프로그램이 CLI 프로그램입니다.

2. 주요기능

  • 프로젝트 생성 (필수파일, 메타파일, 웹 애플리케이션, JavaScript 서비스)
  • web application 패키징
  • 타겟 디바이스 관리
  • web application 설치/삭제/설치 목록 보기
  • web application 실행/종료/실행 중인 앱 목록 보기
  • web application 디버깅

 

다운로드 & 설치 확인


1. nodejs 설치

node.js를 먼저 설치해주어야 합니다.
아래의 링크로 들어가 자신의 운영체제에 맞는 nodejs를 설치해줍니다.
https://nodejs.org/ko/download/

# Check the installation. 
node --version
npm --version


nodejs의 설치를 확인하는 명령어입니다.
또 node가 설치될 때 npm이라는 패키지를 관리하는 프로그램을 같이 깔아줍니다.
npm 또한 버전확인 명령어로 설치를 확인해줍니다.
shell 창에 버전 정보가 뜨면 설치가 잘 진행된 것입니다.

2. CLI 설치

  • CLI 설치
# CLI installation 
npm install -g @webosose/ares-cli 
# Check the installation. 
ares --version

윗 줄은 CLI를 설치하는 명령어입니다.
설치 후 아랫줄 명령어를 작성하고 shell 창에 버전 정보가 뜨면 설치가 잘 진행된 것입니다.

설치까지 진행한 후 버전 확인 부분에서 보안오류가 뜨시는 분들은 아래의 링크를 참고해주세요!
https://extbrain.tistory.com/118

 

명령어


1. 명령어

아래의 표는 CLI 전체 명령어 입니다.
저희는 이 명령어들을 이용해 webapplication을 만들고, 설치하는 (등등)의 일들을 하게 됩니다.

webOS OSE 개발자 사이트 :Command-Line Interface User Guide 에 들어가면 위의 내용을 확인할 수 있습니다.

 

디바이스 설정하기


  • ares-setup-device
    ares-setup-device​
     위의 명령어를 이용하면 등록된 디바이스의 목록을 보거나 추가 / 삭제 / 수정 등의 관리를 할 수 있습니다.


ares-setup-device명령어의 option들을 살펴보겠습니다.

  • -R 옵션
    ares-setup-device --reset|-R
    위의 명령어를 이용하면 등록된 target device의 목록을 초기화 시킵니다.
  • -l 옵션
    ares-setup-device --list|-l
    위의 명령어를 이용하면 등록된 target devices의 목록을 볼 수 있습니다.
  • -F 옵션
    ares-setup-device --listfull|-F
    위의 명령어를 이용하면 등록된 target devices의 정보를 더 자세하게 목록의 형식으로 볼 수 있습니다.
  • -V 옵션
    ares-setup-device --version|-V​
    위의 명령어를 이용하면 CLI 버전을 확인할 수 있습니다.
  • -h 옵션
    ares-setup-device --help|-h
    위의 명령어를 이용하면 ares-setup-device 명령어의 도움말을 볼 수 있습니다.

 

템플릿으로 시작하기


  • ares-generate
    ares-generate
    위의 명령어를 이용하면 사용가능한 템플릿의 목록을 확인할 수 있고, 템플릿  기반으로 프로젝트를 생성할 수 있습니다.


ares-generate명령어의 option들을 살펴보겠습니다.

  • -t 옵션
    ares-generate -t <template> <App_Name>
    위의 명령어를 이용하면 생성할 template 틀과 App이름을 작성해 웹앱을 생성할 수 있습니다.
  • -l 옵션
    ares-generate --list|-l
    위의 명령어를 이용하면 이용가능한 template틀 목록을 확인 할 수 있습니다. 
    t옵션을 사용하기 전 사용가능한 template틀을 확인할 수 있습니다.
  • -V 옵션
    ares-generate --version|-V
    위의 명령어를 이용하면 CLI 버전을 확인할 수 있습니다.
  • -h 옵션
    ares-generate --help|-h
    위의 명령어를 이용하면  ares-generate 명령어의 도움말을 볼 수 있습니다.

 

 

애플리케이션 패키징


컴퓨터에서 웹앱을 생성한 후 webOS에서 설치하기 위해 ipk파일로 패키징을 해야합니다.

  • ares-package
    ares-package <App_Name>
    위의 명령어를 이용하면 우리가 만든 app또는 JS service를 ipk파일로 패키징할 수 있습니다.


ares-package명령어의 option들을 살펴보겠습니다.

  • -o옵션
    ares-package --outdir|-o 
    위의 명령어를 이용하면 ipk(패키지)파일의 저장경로를 설정할 수 있습니다.
  • -V옵션
    ares-package --version|-V
    위의 명령어를 이용하면 CLI 버전을 확인할 수 있습니다.
  • -h옵션
    ares-package --help|-h
    위의 명령어를 이용하면  ares-package 명령어의 도움말을 볼 수 있습니다.

 

 

애플리케이션 설치하기


생성된 ipk파일을 webOS에 설치해보겠습니다.

    • ares-install
      > ares-install
      위의 명령어를 이용하면 패키지 파일(.ipk)을 지정한 디바이스에 설치 또는 삭제를 할 수 있고, 디바이스에 설치된 애플리케이션의 목록을 확인할 수 있습니다.


ares-install명령어의 option을 살펴보겠습니다.

  • -d옵션
    ares-install --device <TARGET_DEVICE> ./<.ipk 파일 이름>
    위의 명령어를 이용하면 web application을 설치할 수 있습니다.


 

애플리케이션의 실행과 종료


  • ares-launch
    ares-launch​
    위의 명령어를 이용하면 디바이스에 설치된 애플리케이션을 실행 또는 종료할 수 있습니다.

 

ares-launch 명령어의 option을 살펴보겠습니다.

  • -D 옵션
    ares-launch --device-list|-D​
     위의 명령어를 이용하면 현재 설정된 디바이스 목록을 확인할 수 있습니다.
  • -d 옵션
    ares-launch --device|-d <TARGET_DEVICE>​
     위의 명령어를 이용하면 실행할 앱의 디바이스 지정 후, App ID로 설치된 앱을 원격으로 실행할 수 있습니다.
  • -r 옵션
    ares-launch --running|-r​
     위의 명령어를 이용하면 디바이스에서 실행 중인 앱의 목록을 확인할 수 있습니다.
  • --close 옵션
    ares-launch --close <APP_ID>​
     위의 명령어를 이용하면 종료할 앱의 ID를 지정하여 디바이스에서 실행중인 앱을 원격으로 종료할 수 있습니다.

 

 

Web Inspector 또는 Node's Inspector의 실행


  • ares-inspect
    ares-inspect​
    위의 명령어를 통해 Web Inspector와 Node's Inspector를 실행할 수 있습니다.

(위 명령어는 webOS OSE의 Chrome / Chromium과 동일한 버전을 사용하는 것이 좋습니다.)


ares-inspect명령어의 option들을 살펴보겠습니다.

  • -D 옵션
    ares-inspect --device-list|-D​
     위의 명령어를 이용하면 현재 설정된 디바이스 목록을 확인할 수 있습니다.
  • -a 옵션
    ares-inspect [--app|-a] <App_ID>
    위의 명령어를 이용하면 Web Inspector로 디버깅 할 애플리케이션을 지정할 수 있습니다.
  • -s 옵션
    ares-inspect --service|-s <SERVICE_ID>
    위의 명령어를 이용하면 Node's Inspector로 디버깅 할 Service ID를 지정할 수 있습니다.
  • -o 옵션
    ares-inspect --open|-o
    위의 명령어를 이용하면 호스트 컴퓨터의 디폴트 브라우저를 실행합니다.

주의 : 위 옵션은 Web Inspector에서만 실행되므로 -a옵션에서만 사용할 수 있습니다. Node's Inspector에서 실행하려면 Chrome DevTools 또는 Visual Studio Code와 같은 Node's Inspector 클라이언트를 이용해 주세요.

  • -dp 옵션
    ares-inspect --display|-dp <DISPLAY_ID>
     위의 명령어를 이용하면 애플리케이션을 시작한 뒤 지정된 디스플레이에서 Web Inspector를 열 수 있습니다.

 

 

디바이스의 Shell 연결과 실행


  • ares-shell
    ares-shell​
     위의 명령어를 이용하면 지정한 디바이스의 Shell로 연결하거나 바로 실행할 수 있습니다.

 

ares-inspect명령어의 option들을 살펴보겠습니다.

  • -d 옵션
    ares-shell -d <TARGET_DEVICE>​
    위의 명령어를 이용하면 지정한 디바이스 Shell로 직접 연결할 수 있습니다.
  • -r 옵션
    ares-shell -d <TARGET_DEVICE> -r <CMD>​
     위의 명령어를 이용하면 디바이스 Shell을 실행하지 않고 명령어를 직접 실행할 수 있습니다.

 

 

 

더 많은 옵션들은 webOS OSE 개발자 사이트 :Command-Line Interface User Guide 에서 확인할 수 있습니다.