소개
Picassio는 PowerShell v3.0+ 기반의 자동화된 프로비저닝 및 배포 도구로, 단일 JSON 파일을 통해 시스템 설정을 관리합니다. 이 도구는 빈 서버나 컴퓨터를 '캔버스'처럼 취급하여 JSON 파일을 '팔레트'로 사용해 소프트웨어 설치, 서비스 관리, 파일 복사 등 다양한 작업을 수행합니다. Badgerati에서 개발 및 유지보수하며, MIT 라이선스 하에 오픈소스로 제공됩니다.
상세정보
소프트웨어 패키지 관리
Chocolatey, NPM, Bower, NuGet을 통해 소프트웨어 패키지의 설치, 업그레이드, 제거를 자동화할 수 있습니다. 해당 패키지 관리자가 필요할 경우 자동으로 설치됩니다.
저장소 및 빌드 자동화
Git 및 SVN 저장소에서 소스를 클론하거나 체크아웃하고, MSBuild를 사용하여 프로젝트 및 솔루션을 빌드할 수 있습니다.
명령 실행 및 스크립트 지원
명령 프롬프트 또는 PowerShell을 통해 지정된 명령을 실행할 수 있으며, Node.js 애플리케이션 실행, NUnit 테스트 실행, Cake 빌드 스크립트 실행도 지원됩니다.
Windows 서비스 및 IIS 관리
Windows 서비스의 설치, 제거, 시작, 중지 및 재시작을 자동화할 수 있습니다. 또한 IIS에서 웹사이트 및 애플리케이션 풀의 생성, 제거, 시작, 중지 및 바인딩 설정을 관리할 수 있습니다.
파일 및 호스트 파일 관리
파일 및 폴더를 복사할 때 포함 및 제외 규칙을 적용할 수 있으며, hosts 파일에 항목을 추가하거나 제거할 수 있습니다.
확장성 및 모듈 지원
모든 기능은 모듈화되어 있어 사용자가 서드파티 확장을 개발하여 기능을 확장할 수 있습니다. 또한 Vagrant를 사용한 VM 생성, 인증서 설정(MMC), SQL Server 스크립트 실행 등 다양한 추가 기능을 제공합니다.
다운로드·설치 방법
Picassio는 Chocolatey 패키지 관리자를 통해 설치할 수 있습니다. 공식 Chocolatey 저장소에서 다음 명령을 실행하여 설치합니다:
choco install picassio
설치 후 시스템에서 ‘picassio’ 명령을 사용할 수 있습니다. 의존성이 필요한 경우(예: Git, Node.js 등)는 해당 기능이 실행될 때 자동으로 설치됩니다.
기본 사용법/명령어
Picassio는 팔레트 파일(JSON)을 입력으로 받아 작동합니다. 기본 사용 방법은 다음과 같습니다:
- 팔레트 파일 검증:
picassio -palette example.palette -validate - 팔레트를 적용하여 시스템 프로비저닝:
picassio -palette example.palette -paint - 버전 정보 확인:
picassio -version - 도움말 보기:
picassio -help
특정 디렉토리에서 picassio -paint 명령을 실행하면 해당 디렉토리에서 ‘picassio.palette’라는 이름의 기본 팔레트 파일을 자동으로 찾습니다.
이런 경우에 유용합니다
시스템 관리자나 개발자가 새로운 서버나 개발 환경을 반복적으로 설정해야 할 때 유용합니다. 예를 들어, 웹 서버를 위한 IIS 설정, 데이터베이스 서버 준비, 개발 팀의 표준 개발 환경 구축 등을 한 번의 팔레트 파일로 자동화할 수 있습니다. 또한 기존 시스템을 알려진 깨끗한 상태로 되돌리는 롤백 기능이 필요할 때 지우기(erase) 섹션을 활용할 수 있습니다.
지원 환경·시스템 요구사항
Picassio는 PowerShell v3.0 이상이 설치된 Windows 시스템에서 실행됩니다. 별도의 외부 소프트웨어에 의존하지 않으나, 특정 기능을 사용할 때(예: Git 저장소 클론, Node.js 애플리케이션 실행) 필요한 도구는 자동으로 설치됩니다. 따라서 기본 Windows PowerShell 환경에서 시작하여 점진적으로 필요한 도구를 확보할 수 있습니다.
최신 버전·업데이트
현재 버전은 0.12.0이며, 공식 GitHub 저장소에서 소스 코드와 릴리스 정보를 확인할 수 있습니다. 최신 업데이트 사항은 저장소의 커밋 히스토리 및 릴리스 노트를 참조하십시오.
제한 사항·확인 사항
Picassio는 PowerShell 기반 도구이므로 non-Windows 환경에서는 기본적으로 지원되지 않습니다. 또한 팔레트 파일의 JSON 구조를 정확히 이해하고 작성해야 효과적으로 사용할 수 있으며, 복잡한 시스템 구성의 경우 초기 학습 곡선이 존재할 수 있습니다.
시스템 요구사항
별도의 시스템 요구사항이 등록되지 않았습니다.


