홈 - 블로그 - 정보

Yarn을 사용하여 비공개 패키지를 관리하는 방법은 무엇입니까?

그레이스 후
그레이스 후
그레이스는 섬유 전문 블로거로, 특히 광둥 롄이 섬유 유한회사(Guangdong Lianyi Textile Co., Ltd.)의 제품 리뷰를 전문으로 합니다. 그녀는 해당 회사의 스웨터와 원사에 대한 심층적이고 객관적인 리뷰를 제공하여 소비자들이 정보에 입각한 구매 결정을 내릴 수 있도록 돕습니다.

맞춤형 니트웨어 라인이나 클라이언트별 직물 프로젝트에 참여해 본 적이 있다면 자체 원사 재고를 관리하는 것이 얼마나 까다로울 수 있는지 알 것입니다. 특히 공개 npm 레지스트리를 막히지 않고 비공개 내부 원사 패키지를 생산 워크플로에 연결해야 하는 경우에는 더욱 그렇습니다. 지난 12년 동안 소규모 니트웨어 및 맞춤형 직물 프로젝트에 프리미엄 원사를 공급해 온 사람으로서 저는 팀이 공개 npm 패키지와 비공개 원사 종속성을 혼합하여 지연, 규정 준수 문제, 심지어 생산 중단으로 이어질 때 얼마나 지저분해질 수 있는지 직접 보았습니다. 그렇기 때문에 저는 Yarn을 사용하여 맞춤형 비공개 소재를 사용하는 공급업체, 니트웨어 브랜드 및 생산 팀의 요구 사항에 맞춰 비공개 원사 패키지를 관리하는 방법을 정확하게 분석하고 싶습니다.

먼저, 이 맥락에서 개인용 원사 패키지가 실제로 무엇을 의미하는지 명확하게 살펴보겠습니다. 나와 같은 직물 공급업체의 경우, 전용 원사 패키지는 해당 브랜드를 위해 독점적으로 개발한 맞춤형 블렌드일 수 있습니다. 예를 들어 겨울 라인을 위해 디자인된 두껍고 염색에 안정적인 울 캐시미어 믹스이거나 공개 경쟁자가 접근하기를 원하지 않는 무독성 브랜드별 색소로 염색된 식물 기반 원사일 수 있습니다. 이러한 패키지는 단순한 코드가 아닙니다. 프로젝트 종속성을 위해 Yarn을 사용하는 사용자의 경우 비공개 Yarn 패키지를 특정 SKU 또는 생산 실행에 연결된 선별된 비공개 원사 자료 세트로 생각하세요. 잠시만요, 코드용으로 Yarn을 사용하는 개발자, 니트웨어 디자이너 소싱 재료 또는 재고를 추적하는 생산 관리자 등 모든 대상이 관련성을 가질 수 있도록 이러한 격차를 해소해 보겠습니다. 인기 있는 패키지 관리자인 Yarn은 개인 패키지를 버전이 지정되고 액세스가 제한된 세트로 구성할 때 소프트웨어 코드와 실제 제품 모두에 대해 작동합니다. 이것이 바로 우리 팀이 매일 다루는 정확한 사용 사례이기 때문에 여기서 집중할 각도입니다.

Women Knitwear Long Sleeve Contrast Color Christmas Styles Sweater100%silk Raw Yarn

따라서 1단계: 승인된 파트너, 브랜드 또는 내부 팀만 액세스할 수 있는 비공개 Yarn 레지스트리를 설정하세요. 대부분의 직물 공급업체(및 소규모 디자인 스튜디오)의 경우 막대한 투자가 필요하지 않습니다. 우리에게 가장 접근하기 쉬운 옵션은 Verdaccio와 같은 도구를 사용하는 자체 호스팅 레지스트리입니다. 이는 개인 Yarn 패키지를 자체 서버에 호스팅할 수 있게 해주는 오픈 소스 소프트웨어이므로 패키지를 가져올 수 있는 사람을 제어할 수 있습니다. 누구나 검색할 수 있는 공개 레지스트리와는 달리, 개인 레지스트리를 사용하면 사용자 역할을 설정할 수 있습니다. 브랜드의 생산 관리자는 경쟁자가 복사할 수 있도록 공개적으로 나열하지 않고도 독점 울 캐시미어 혼방사(맞춤 계약을 통해 사전 승인된 고객에게만 제공되는 Practical Wool Cashmere Blend Yarn)를 가져올 수 있습니다. 전체 서버를 유지하고 싶지 않은 소규모 공급업체나 브랜드인 경우 Yarn과 원활하게 통합되는 GitHub 패키지 또는 GitLab 패키지와 같은 관리형 개인 레지스트리도 있습니다. 우리는 내부 원사 재고를 위해 Verdaccio를 사용하고 파트너 독점 니트 원사 SKU를 위해 GitHub 패키지를 모두 사용합니다.

개인 레지스트리가 설정되면 기본 공용 npm 레지스트리 대신 이를 가리키도록 Yarn을 구성해야 합니다. 이는 많은 신규 사용자에게 걸림돌이 되는 단계입니다. 특히 단순히 실행에만 익숙한 사용자라면 더욱 그렇습니다.원사 추가공개 패키지의 경우. 이를 설정하려면.yarnrc.yml파일(공급업체 팀에서 표준화한 Yarn 2 또는 3을 사용하는 경우) 또는 이전.npmrc원사용 파일 1. 설정을 위해 두 개의 범위를 추가했습니다. 하나는 원사 재료용이고 다른 하나는 완성된 니트 관련 패키지용입니다. 구성은 다음과 같습니다.

npmScopes: our-supplier-name: npmRegistryServer: "https://registry.oursupplier.com" npmAlwaysAuth: true npmAuthToken: "${NPM_AUTH_TOKEN}"

이는 Yarn에게 접두사가 붙은 모든 패키지를 알려줍니다.@우리-공급업체-이름/공개 레지스트리가 아닌 개인 레지스트리에서 가져와야 합니다. 이렇게 하면 브랜드가 독점 원사를 생산 라이브러리에 추가하려고 할 때 다음과 같이 실행하면 됩니다.원사 추가 @our-supplier-name/practical-wool-cashmere-blend-yarn공개 액세스가 필요 없이 개인 레지스트리에서 직접 가져옵니다.

다음으로, 개인용 원사 패키지를 레지스트리에 어떻게 게시합니까? 여기에서 우리는 수년에 걸쳐 프로세스를 개선하여 빠르고 오류가 없습니다. 먼저 패키지 버전이 올바른지 확인하세요. 100% 실크 원사와 같은 원사의 경우 의미 버전 관리를 사용합니다.1.0.0초기 생산 배치의 경우,1.1.0사소한 염료 조정을 위해,1.0.1비틀림 강도를 약간 조정합니다. 이렇게 하면 브랜드의 생산 라인이 특정 버전에 의존하는 경우 실수로 패턴과 일치하지 않는 배치를 얻는 일이 없습니다(예: 매우 구체적인 실 게이지가 필요한 조명 패턴이 있는 크리스마스 스웨터).

잠깐, 구체적으로 만들어보자. 지난 분기에 한 고객이 맞춤형 크리스마스 스웨터 라인에 사용할 실, 특히 늘어나거나 끊어지지 않고 작은 LED 봉제 조명을 고정할 수 있는 실이 필요하다고 우리에게 왔습니다. 우리는 독특한 게이지와 신축률을 갖춘 그들을 위해 독점적으로 전용 원사 혼합을 개발했습니다. 해당 원사를 공개 사이트에 나열하는 대신 이를 레지스트리에 비공개 Yarn 패키지로 게시하고 브랜드 팀에 범위 내 액세스 권한을 부여했습니다. 그들이 달렸을 때원사 추가 @our-supplier-name/christmas-lights-yarn, 정확히 올바른 버전을 가져왔고 다른 브랜드는 이에 액세스할 수 없었습니다. 이것이 바로 섬유 공급업체를 위한 개인 패키지의 힘입니다. 귀하는 단지 제품을 판매하는 것이 아니라 귀하의 맞춤형 공식과 고객의 고유한 디자인을 보호할 수 있습니다.

비공개 원사 패키지를 게시하려면 먼저 다음을 사용하여 레지스트리에 인증하세요.원사 로그인 --registry=https://registry.oursupplier.com. 그러면 사용자 이름과 토큰을 입력하라는 메시지가 표시됩니다. 함께 작업하는 각 팀이나 브랜드에 대해 고유한 토큰을 생성하면 파트너십이 종료되면 언제든지 액세스 권한을 취소할 수 있습니다. 인증되면 패키지 디렉터리(100% 실크 원사의 경우 원사의 기술 사양, 배치 번호 및 재료 세부 정보가 포함된 폴더)로 이동하여 실행합니다.원사 게시 --registry=https://registry.oursupplier.com. 그러면 패키지가 번들로 묶이고 버전이 할당되며 개인 레지스트리에만 푸시됩니다. 승인된 사용자 목록 외부의 누구도 이를 보거나 다운로드할 수 없습니다.

이제 여러 브랜드와 협력하는 공급업체인 경우 매우 중요한 액세스 관리에 대해 이야기해 보겠습니다. 새로운 파트너가 실수로 다른 브랜드의 독점 원사 패키지에 액세스하는 것을 원하지 않으시죠? Yarn의 개인 레지스트리를 사용하면 세분화된 권한을 설정할 수 있습니다. 예를 들어 GitHub 패키지의 경우 특정 Yarn 패키지에만 브랜드의 GitHub 계정을 공동 작업자로 추가할 수 있습니다. Verdaccio의 경우 사용자 그룹을 만들 수 있습니다. 다음과 같은 그룹이 있습니다.승인된 니트 파트너,내부 생산,테스트 배치, 등등. 니트 파트너 그룹은 모든 개인 니트 원사 패키지(예: 남성복 브랜드의 인기 있는 개인 SKU인 유니폼 스웨터 남성용 자카드 긴 소매 패턴 니트 가디건 스웨터)에 액세스할 수 있지만 자동차 실내 장식과 같은 다른 산업을 위한 원사 재고에는 액세스할 수 없습니다. 이러한 수준의 통제가 개인 패키지가 섬유 공급업체에게 적합한 이유입니다. 과도한 공유 없이 각 고객의 요구에 맞게 액세스를 조정할 수 있습니다.

새로운 공급업체가 흔히 저지르는 실수는 적절한 범위 지정 없이 비공개 패키지와 공개 패키지를 혼합하는 것입니다. 예를 들어 공개 사이트에 공개 원사를 나열하지만 동일한 원사를 비공개 패키지로 게시하는 경우 버전 불일치가 발생할 수 있습니다. 우리는 모든 맞춤형 파트너별 원사를 비공개 Yarn 패키지로 분리하고 기성 원사(모든 고객에게 판매)를 공개 패키지로 분리하여 이 문제를 해결했습니다. 이렇게 하면 고객이 공개 사이트에서 기성품인 실용 울 캐시미어 혼방 원사를 구매하는 경우 이는 공개 패키지가 되고, 브랜드가 동일한 울 캐시미어 베이스와 맞춤 블렌드를 제공하는 경우 고유한 버전과 추가 사양이 포함된 비공개 패키지가 됩니다. 혼란도 없고 오류도 없습니다.

개인 원사 패키지에 Yarn을 사용하는 또 다른 큰 이점은 생산 및 재고 도구와 통합된다는 것입니다. 우리는 Yarn의 잠금 파일 기능을 사용하여 각 생산 실행에서 사용하는 Yarn의 버전을 정확히 추적합니다. 그래서 한 브랜드의 제작팀이 운영을 하게 되면원사 설치, 잠금 파일은 우리가 지정한 것과 정확히 동일한 실 배치를 보장합니다. 대체품이나 변형이 없습니다. 이는 게이지가 5%만 변경되어도 전체 라인이 망가질 수 있는 니트웨어의 경우 엄청난 규모입니다. 예를 들어, 한 브랜드가 Ladies Contrast Long Sleeve Christmas Sweater를 작업 중일 때 해당 브랜드의 잠금 파일이 우리의 전용 원사 패키지를 버전에 고정했습니다.1.2.0, 대비 커프에 필요한 정확한 신축성을 가졌습니다. 새 버전을 출시했을 때1.2.1약간의 염료 조정으로 그들은 명시적으로 실행하지 않는 한 그것을 얻지 못했습니다.원사 업그레이드, 이는 바로 우리가 맞춤형 제품을 원했던 것입니다.

이제 문제 해결을 다루겠습니다. 견고한 설정으로도 문제가 발생하기 때문입니다. 우리가 직면하는 가장 일반적인 문제는 개인 패키지를 가져올 때 인증 실패입니다. 브랜드 팀이 실행 시 '401 Unauthorized'와 같은 오류가 발생하는 경우원사 추가, 이는 거의 항상 인증 토큰이 만료되었거나 특정 패키지에 액세스할 수 없음을 의미합니다. 우리는 보안 채널을 통해 각 브랜드에 고유한 토큰을 보내는 것을 중요하게 생각하며 토큰이 만료되기 30일 전에 알림을 보내 새 토큰을 요청할 수 있도록 합니다. 또 다른 일반적인 문제는 Yarn 구성의 잘못된 범위입니다. 팀이@우리-공급업체-이름/접두사를 사용하면 Yarn은 사용자 지정 제품과 일치하지 않는 공개 버전을 가져오려고 시도합니다. 내부 사이트에는 팀이 확인하는 과정을 안내하는 빠른 가이드가 있습니다..yarnrc.yml파일을 다운로드하고 출시하기 전에 데모 브랜드 계정으로 모든 비공개 패키지를 테스트합니다.

전체 개인 레지스트리를 관리하고 싶지 않은 소규모 공급업체나 디자인 스튜디오의 경우 개인 GitHub 저장소에서 개인 원사 패키지를 호스팅하는 더 간단한 대안이 있습니다. Yarn은 다음과 같은 URL을 사용하여 GitHub에서 직접 패키지를 가져올 수 있습니다.https://github.com/our-supplier-name/private-yarn-package#1.0.0. 별도의 레지스트리 서버를 설정할 필요가 없으므로 소규모 팀에 적합합니다. 우리는 하나 또는 두 개의 개인 원사 패키지만 필요한 독립 니트웨어 디자이너와 같은 소규모 고객을 위해 이것을 사용했습니다. 단점은 GitHub가 전용 레지스트리와 동일한 세부적인 액세스 제어를 제공하지 않으므로 리포지토리에 액세스 권한을 부여하는 사람에게 주의해야 한다는 것입니다.

이제 이것이 왜 모든 사람에게 중요한지 다시 살펴보겠습니다. 원사 공급업체로서 우리의 임무는 단순히 재료를 판매하는 것이 아닙니다. 경쟁업체가 공식을 복사하거나 잘못된 원사 배치로 인한 생산 지연에 대해 걱정하지 않고 고객이 고유한 디자인에 생명을 불어넣을 수 있도록 돕는 것입니다. 비공개 패키지를 관리하기 위해 Yarn을 사용하면 이를 수행할 수 있습니다. 누가 어떤 Yarn에 액세스하는지 제어하고, 일관성을 위해 버전을 추적하며, 클라이언트가 필요한 것을 정확히 얻을 수 있도록 프로세스를 간소화합니다. 맞춤형 니트 디자인을 보호하려는 브랜드이거나 번거로운 스프레드시트나 수동 재고 추적 없이 개인 SKU를 제공하려는 공급업체라면 Yarn의 개인 패키지 시스템이 게임 체인저가 될 것입니다.

원사 제품이나 맞춤형 직물 프로젝트를 위한 비공개 Yarn 패키지를 설정할 준비가 되셨다면 저희 팀이 도와드리겠습니다. 우리는 니트웨어 브랜드, 디자인 스튜디오 및 직물 제조업체와 협력하여 개인용 원사와 기성품 원사를 모두 공급하며 액세스 설정, 버전 관리 및 개인 패키지를 생산 워크플로에 통합하는 과정을 안내해 드릴 수 있습니다. 맞춤형 블렌드, 사전 승인된 비공개 SKU 또는 자체 비공개 Yarn 레지스트리 설정에 대한 지침 등 특정 요구 사항에 대해 논의하려면 지금 당사 팀에 문의하세요.

참고자료

  1. 원사 공식 문서. (nd). 개인 패키지. https://yarnpkg.com/features/private-packages에서 검색됨
  2. Verdaccio 오픈 소스 레지스트리. (nd). Private Yarn 패키지 시작하기. https://verdaccio.org/docs/에서 검색함
  3. npm Inc.(nd). npm 범위 및 개인 패키지. https://docs.npmjs.com/about-scopes에서 검색됨
  4. 텍스타일 월드 매거진. (2023). 소규모 배치 생산을 위한 맞춤형 원사 재고 관리. https://textileworld.com/articles/managing-custom-yarn-inventory에서 검색함

문의 보내기

인기 블로그 게시물