Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Ultimate 라이선스 이용시 사용해야 할 스캐닝 기능

GitLab

Ref. template

사용 Stages

Build

Jobs/Build.gitlab-ci.yml

build

Build Test

Jobs/Test.gitlab-ci.yml

test

Code Quality

Jobs/Code-Quality.gitlab-ci.yml

test

Deploy

Jobs/Deploy.gitlab-ci.yml

review, cleanup, staging, canary etc

Jobs/Deploy/ECS.gitlab-ci.yml

review

Browser Performance

Jobs/Browser-Performance-Testing.gitlab-ci.yml

performance

Dynamic Application Security Testing (DAST)

Jobs/DAST-Default-Branch-Deploy.gitlab-ci.yml

review, cleanup

Security/DAST.gitlab-ci.yml

dast

Container Scanning

Security/Container-Scanning.gitlab-ci.yml

test

Dependency List

Dependency Scanning

Security/Dependency-Scanning.gitlab-ci.yml

test

License Compliance

Security/License-Scanning.gitlab-ci.yml

test

Static Application Security Testing (SAST)

Security/SAST.gitlab-ci.yml

test

Application Security

Security/Secret-Detection.gitlab-ci.yml

test

이슈 사항

GitLab을 인터넷 연결이 안되는 내부망 내에서 사용하기 위해 다음과 같은 환경을 구성했습니다.

  • GitLab의 Container Registry를 비활성화

  • 사설 Docker Registry(Harbor)를 설치 후 필요한 도커 이미지를 모두 push함

이러한 환경에 대한 GitLab의 조언을 구했을 때 일반적인 Offline 환경에서도 가능하다는 답변을 받았습니다.(169739번 request)

환경 구성 후 NodeJS로 단순한 GitLab 프로젝트를 구성 후 실행하면 다음과 같은 결과가 있었습니다.

  • 인터넷 연결 시 : 파이프라인의 모든 job 성공

  • 인터넷 연결 해제 시 : 대부분의 job이 실패

위의 결과에 대해 GitLab Support Center에 재문의를 하였고(169739 request), 다음과 같은 답변을 받았습니다.

  • 프로젝트에서 구성된 파이프 라인의 종속성이 있을 경우, 일부 단계가 실패할 수 있음

  • 예를 들어 codeclimate/codeclimate:0.85.10가 harbor에 있음에도 로컬에서 사용할 수 없어 공식 Docker 저장소에 fullback을 시도 → 인테넛 액세스 불가로 작업 실패

  • 일부 CI 작업의 경우 현재 오프라인 사용에 대한 지원이 제한됨 (https://gitlab.com/gitlab-org/ci-cd/codequality/-/merge_requests/13)

위의 내용과 관련된 이슈를 담당자 분께 전달했고, local 환경에서 사용할 수 있는 방안에 대한 확인 요청을 받았습니다. 만약 위의 이슈가 해결되지 않는다면 GitLab Ultimate을 사용할 수 없는 상황입니다.

세부적인 요구 사항은 다음과 같습니다.

  • GitLab의 사용 환경은 Offline 환경이며, 별도의 Docker Registry를 구성하여 사용할 예정

  • GitLab Auto DevOps에서 제공하는 모든 Scanning 기능을 별도의 파이프라인에 구성하여 전체 기능을 사용해야 함

  • 특히 GitLab 프로젝트는 아래의 3가지 유형으로 구성될 예정이며 각 언어에 맞는 GitLab scanner가 Offline 환경에서 동작해야함

    • Java (Maven) Project

    • Python (PyPI) Project

    • NodeJS (NPM) Project

  • 위 3가지 종류의 프로젝트가 Offline 환경에서, GitLab이 제공하는 scanning 기능을 모두 활용할 수 있어야함

  • 이에 대한 환경 구성 가이드가 절대적으로 필요함

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.