사용자 지정 스크립트

Scripts are the lightest-weight entry point into Behavior Extensibility – Python code that runs on the platform server and can be triggered, scheduled, or called from within larger automation flows.

Behavior Extensibility 프레임워크에서 스크립트는 Altium 365 플랫폼의 컨텍스트에서 실행되는 서버 측 Python입니다. 컴파일된 확장 기능이나 전체 워크플로 자동화와 달리, 스크립트는 의도적으로 경량으로 설계되어 있습니다. 즉, 단일 파일, 정의된 입력/출력 계약, 그리고 하나의 분명한 목적을 가집니다. 스크립트는 수동으로 트리거할 수 있고, 훅에서 호출할 수도 있으며, 워크플로 내 단계로 포함되거나, 반복 일정에 따라 실행되도록 예약할 수도 있습니다.

스크립트는 체크, 훅, 워크플로 블록과 동일한 확장성 인프라를 공유합니다. 즉, Workspace 데이터에 접근할 수 있고, 외부 시스템을 호출할 수 있으며, 그 결과를 자동화 파이프라인의 다른 부분에 전달할 수도 있습니다. 차이점은 범위에 있습니다. 스크립트는 한 가지 일을 수행하고, 그것을 깔끔하게 처리하며, 빠르게 반복 개선할 수 있습니다.

이 컨텍스트에서 스크립트의 용도

  • Targeted automation – 트리거 시 한 번 실행되는 스크립트는 라이브러리 전반에서 컴포넌트 파라미터 값을 정규화하거나, Workspace 데이터에서 사용자 정의 보고서를 생성하거나, 릴리스 후 데이터세트를 외부 시스템으로 푸시하는 데 사용할 수 있습니다. 전체 체크 또는 워크플로 프레임워크에 연결할 필요가 없는, 목적이 분명한 작업에 적합합니다.

  • Data transformation – 시스템 간에 데이터를 재구성해야 할 때 스크립트가 적합한 도구입니다. 예를 들어 Altium 데이터 구조를 외부 API가 요구하는 형식으로 변환하거나, 들어오는 데이터를 Workspace에 기록하기 전에 변환하는 경우입니다. 더 큰 워크플로 내부에 변환 로직을 묻어두는 것보다, 스크립트에 깔끔하게 작성된 변환 로직이 테스트와 유지보수에 더 유리합니다.

  • Policy enforcement, lightweight – 자동 체크포인트에서 실행할 필요가 없는 강제 규칙의 경우에도 적합합니다. 예를 들어 팀 리더가 마일스톤 검토 전에 실행하는 규칙이나, 모든 커밋마다가 아니라 필요 시 호출되는 체크라면, 플랫폼 이벤트에 등록된 전체 체크보다 스크립트가 더 적절합니다. 트리거가 의도적이고 수동적인 경우에는 전체 체크 인프라의 오버헤드가 정당화되지 않습니다.

  • Building blocks for larger automation – 스크립트는 훅과 워크플로 블록에서 호출할 수 있어, 더 큰 자동화 내에서 재사용 가능한 단위가 됩니다. 예를 들어 외부 승인 공급업체 목록을 조회하는 스크립트는 로직을 중복하지 않고 여러 체크와 훅에서 호출할 수 있습니다. 외부 시스템과의 상호작용은 스크립트가 담당하고, 정책 결정은 체크 또는 훅이 담당합니다.

스크립트와 다른 Behavior Extensibility 기본 요소 비교

스크립트는 체크, 훅, 워크플로 블록을 대체하는 것이 아니라, 역할이 다른 상호보완적인 기본 요소입니다.

체크는 플랫폼 검증 이벤트에 연결되어 정의된 체크포인트에서 자동으로 실행됩니다. 반면 스크립트는 명시적으로 호출될 때 실행됩니다.

훅은 플랫폼 라이프사이클 이벤트에 반응하여 자동으로 실행됩니다. 스크립트는 사용자, 일정, 또는 다른 자동화 기본 요소 내부에서 의도적으로 호출됩니다.

워크플로 블록은 워크플로 정의 내에서 재사용 가능한 단계입니다. 스크립트는 워크플로 블록이 호출하는 로직을 구현할 수 있지만, 스크립트 자체만으로는 워크플로 단계가 아닙니다.

요구 사항이 목적이 명확한 온디맨드 작업이거나 예약 실행 작업이라면 스크립트로 시작하십시오. 플랫폼 이벤트에서 자동으로 실행되어야 한다면 로직을 체크나 훅으로 옮기십시오. 구조화된 다단계 프로세스에 조합되어야 한다면 워크플로 블록으로 감싸십시오.

유지보수와 반복 개선

스크립트는 Python 파일이며, 다른 코드와 마찬가지로 버전 관리에 저장됩니다. 인터프리트 방식으로 실행되고 빌드 단계가 필요 없기 때문에 반복 개선이 빠릅니다. 스크립트를 수정하고, 배포하고, 테스트하면 됩니다. 따라서 정확한 요구 사항이 아직 완전히 정의되지 않았거나, 실제 사용에 따라 로직이 빠르게 발전해야 하는 경우 스크립트는 적절한 출발점이 됩니다.

처음에는 한 사람이 사용하는 유틸리티였던 스크립트도 종종 팀이 함께 사용하는 인프라로 발전합니다. 스크립트가 그 단계에 이르면, 즉 여러 사람이 사용하고, 중요한 프로세스를 다루며, 신뢰성이 기대되는 경우에는 적절한 구조에 투자할 가치가 있습니다. 예를 들어 입력 검증, 오류 처리, 로깅, 그리고 자동 트리거가 필요해질 경우 보다 정식의 체크나 훅으로의 마이그레이션 등을 고려해야 합니다.

 

AI-LocalizedAI로 번역됨
만약 문제가 있으시다면, 텍스트/이미지를 선택하신 상태에서 Ctrl + Enter를 누르셔서 저희에게 피드백을 보내주세요.
콘텐츠