반응형 [AWS-FRF]/CICD16 [참고][AWS] Sonarqube Ruleset import, export 하기!! ## 전자정부 Xml 적용안됨!! Sonarqube를 사용하다 보면 특정 프로젝트에 맞게 룰셋을 정의해야 하는 경우가 생긴다. 룰셋 관련 파일을 받았을 때 이를 어떻게 Sonarqube에 적용을 해야 하는지, 또 어떻게 룰셋 파일로 추출해 내는지에 대해 포스팅한다. 룰셋 파일이라 함은 다음과 같은 모양으로 생긴 xml 파일이다. abcprojectjavafindbugsAM_CREATES_EMPTY_JAR_FILE_ENTRYMAJORfindbugsAM_CREATES_EMPTY_ZIP_FILE_ENTRYMAJORfindbugsAT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTIONMAJORfindbugsBAC_BAD_APPLET_CONSTRUCTORMAJORfindbugsBC_B.. 2024. 10. 8. [중요][AWS][정적분석도구] SonarQube란? SonarQubeSonarQube(소나큐브)는 소스 코드의 품질을 분석하고 관리하기 위한 오픈 소스 정적 코드 분석 플랫폼입니다. 소스 코드 정적 분석을 통해 개발자가 직접 작성한 코드의 버그, 취약점, 저품질 코드를 탐지하고 보고하며 시각화합니다.개발자는 이를 통해 코드의 품질을 향상시키고 유지 보수성을 높일 수 있습니다. 개발자는 SonarQube를 활용하여 클린 코드를 지향한 개발을 할 수 있습니다. 정적 분석 도구 (Static Code Analysis Tools)- 컴파일 단계에서 수행하며 SW 코드의 정적 특성을 분석하여 버그, 보안 취약점, 성능 문제 등을 발견하는 도구.- 소스 코드의 구조, 흐름, 변수 등을 분석하여 잠재적 문제를 식별하고 소프트웨어를 개선하며 코드의 안전성, 신뢰성, 효.. 2024. 10. 8. [중요2][AWS][JENKINS] HOW TO PUSH WAR FILE TO S3 BUCKET THROUGH JENKINS !! (젠킨스 S3 IAM 정책 설정 포함) ## 톰캣 재시작- sh shutdown.sh- sh startup.sh ## 젠킨스 플러그인 설치- github ## 프로젝트 생성- 빌드시 성공 ## Maven 설정- Manage Jenkins ==> Global Tool Configuration ==> Maven ## 프로젝트 추가 설정- maven3 선택- package - 빌드시 성공 ## 젠킨스 Plugin Manager ==> S3 publisher 설치 (S3 업로드용) ## 젠킨스 Configure System ==> Amazon S3 profiles 이동 및 설정 - S3 버킷 생성 (차단 설정) - S3용 액세스/시크릿키 생성 ## 프로젝트 추가 설정 (Post-build action)- Publish a.. 2024. 9. 19. [중요][AWS] ERR_PNPM_OUTDATED_LOCKFILE Cannot install with "frozen-lockfile" because pnpm-lock.yaml 해결!! changed 1 package in 1s 1 package is looking for fundingrun `npm fund` for detailsScope: all 12 workspace projects ERR_PNPM_OUTDATED_LOCKFILE Cannot install with "frozen-lockfile" because pnpm-lock.yaml is not up to date with package.json Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile" Failur.. 2024. 9. 13. [중요][AWS] npm ERR! Missing script: "build:dev" 에러 해결!! > vite-base@0.0.0 bootstrap > npm install -g pnpm && pnpm install changed 1 package in 1s 1 package is looking for funding run `npm fund` for details WARN Unsupported engine: wanted: {"node":">=16.00"} (current: {"node":"v18.16.0","pnpm":"9.10.0"}) Scope: all 12 workspace projects Lockfile is up to date, resolution step is skipped Already up to date Done in 3.2s + npm run build:dev npm ERR! .. 2024. 9. 13. [중요][AWS] 젠킨스 Build step 'Invoke Gradle script' marked build as failure 에러 발생 해결!! * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.orgBUILD FAILED in 4m 52s 7 actionable tasks: 7 executed Build step 'Invoke Gradle script' changed build result to FAILURE Build step 'Invoke Gradle script' marked build as failure SSH: Current bui.. 2024. 9. 13. [참고][Git] 원본 저장소 fork(포크) 및 동기화!! ## Fork 안되서, Import Project 수행 Git: 원본 저장소 fork 및 동기화프로젝트를 수행하다보면 Github에 공개된 오픈 소스 프로젝트들을 기반으로 코드를 수정해 사용하는 경우가 많습니다.보통 git clone을 이용해 원본 저장소의 소스 코드를 복제하고 해당 소스를 기반으로 수정해 자신의 저장소에 push해 사용합니다.그러다가 원본 저장소의 소스 코드가 업데이트될 경우, 해당 업데이트 내용을 내가 수정한 소스 코드에도 반영하고 싶은 순간들이 오게 됩니다.이럴 때 필요한 것이 fork 및 동기화입니다. Git 저장소 fork\n\n"}}" data-parsoid="{"dsr":[0,86,2,2]}"># 프로젝트 복제git clone 우선 자신이 사용할 프로젝트를 clone해 로.. 2024. 9. 12. [중요][젠킨스] Item Description ( 설명 ) HTML 형식으로 작성하기!! 먼저 플러그인이 필요하다.Jenkins 관리 -> 플러그인 관리 로 들어간다. 설치 가능 탭을 클릭하고 OWASP Markup Formatter 을 검색하고 설치한다.설치 후 재시작이 필요하다. ※ 폐쇄망 또는 내부망 사용으로 설치가 되지 않는다면 아래 방법으로 설치하자. 플러그인 다운로드 링크 : https://plugins.jenkins.io/antisamy-markup-formatter/#releasesOWASP Java HTML Sanitizer to allow safe-seeming HTML markup to be entered in project descriptions and the like." data-og-title="OWASP Markup Formatter" data-og-.. 2024. 8. 30. [Spring] bootjar과 그냥 build의 차이!! 개요프로젝트 배포를 진행하기 위해 빌드를 진행하던 와중 아래와 같은 오류가 뜨며 빌드가 진행되지 않았다.그래서 백엔드 챕터를 맡고있는 팀원에게 물어보니 ./gradlew bootjar 로 빌드를 해보란다. 그래서 그냥 했더니어레 왜 되냐 이거 제대로 빌드가 안된거 아닐까 하고 실행해보니실행까지 잘 돼서 이게 대체 뭐가 다른걸까 하고 궁금증이 들어 조사하고 공부해보게 되었다.Gradle buildgradle build는 bootjar과 달리 내부 동작이 더 많으며 길다.(그 내부동작에 bootjar도 포함되어있다) build는 test 코드가 있다면 테스트도 수행을한다.모든 테스트 실행, 프로덕션 아티팩트 생성 및 문서 생성을 포함하여 모든 것을 구축하기 위한 것이다.build가 bootjar과 다른 것들.. 2024. 8. 29. [중요2][AWS] GitLab 저장소 이전하기!! GitLab 인스턴스의 프로젝트를 다른 GitLab 인스턴스로 옮기는 방법을 소개하겠습니다.Git 커멘드를 사용하는 방법 원격 저장소 URL 변경 가장 간단한 방법은 git remote의 URL을 변경하는 것입니다. 이 방법은 기존의 커밋 히스토리, 브랜치, 태그 정보를 그대로 유지하면서 저장소의 위치만 변경합니다. Git 미러링 `git mirror`를 사용하는 방법입니다. 기존 저장소를 새 저장소로 완전히 복제합니다. 이 방법 역시 커밋 히스토리, 브랜치, 태그 정보를 그대로 유지합니다. 위 두 방법은 모두 MR(Merge Request)이나 사용자 설정등은 복제되지 않습니다. MR이나 사용자 설정까지 복제하기 위해서는 GitLab Export/Import 기능을 사용해야 합니다. Gi.. 2024. 8. 27. [중요2][AWS] 깃랩 Import and export settings !! ## 타 깃랩 ==> 깃랩 이전시 GitLab Export 활성화 필요!!- Admin 계정 ==> Setting ==> General ==> Import and export settings Import and export settingsTier: Free, Premium, UltimateOffering: Self-managedSettings for import- and export-related features.Configure allowed import sourcesBefore you can import projects from other systems, you must enable the import source for that system.Sign in to GitLab as a user wit.. 2024. 8. 27. [중요] Jenkins(젠킨스), GitLab ↔ Jenkins ↔ EC2 연동하여 CI/CD 구축!! 🔍 Jenkins(젠킨스)소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴 = CI (Continuous Integration)젠킨스는 서브버전, Git 과 같은 버전 관리시스템과 연동하여 소스의 커밋을 감지하면 자동적으로 자동화 테스트가 포함된 빌드가 작동되도록 설정할 수 있다.✅ 설치조건최소 하드웨어 요구 사항256MB RAM1GB 드라이브 공간(Jenkins를 Docker로 실행하는 경우 최소 10GB 권장) 📌 GitLab 설정1. Access Tokens 발급## 프로젝트 별로 액세스토큰 발급 필요 프로젝트 → Settings → Access Tokens → 화면에 나온대로 입력, 체크 → Create project access token( access token은 한번만 볼수있기 때.. 2024. 8. 26. [중요2][AWS] Jenkins + Spring Boot 배포!! ## 젠킨스 설치 ## https://bit.ly/okdevtv2311 접속 https://docs.google.com/spreadsheets/d/1zfIfuxFNIvnLxMeQ3mifyzRfmO9u-Qniyn6jzpxr34M/edit?pli=1&gid=190218357#gid=190218357젠킨스 인스턴스 생성 zshsudo dnf install zsh git util-linux-user htop -yoh-my-zshsh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"exitexitjava11 mavensudo dnf install java-11-amazon-corretto-headle.. 2024. 8. 23. [중요][AWS] 젠킨스, AWS EC2 우분투에 git 설치!! * EC2 에서 git 을 입력해보아 설치가 안되어있다면 설치하고 아니면 생략한다.Git 설치sudo apt update sudo apt install git git --version // 당시 내가 사용한 git 버전 2.34.1Git 설치된 위치확인* 나중에 젠킨스에서 Jenkins관리-Global Tool Configuration-Git, Path to Git executable 에 입력해줘야 하는 경로which git 출처 : https://ldgeao99-developer.tistory.com/594 2024. 8. 23. [중요][AWS][CI/CD] 환경 구성 - EC2(Jenkins, GitLab) 설치!! --------------------------------------------------------## 아마존 리눅스 Jenkins 설치 ( https://www.jenkins.io/doc/tutorials/tutorial-for-installing-jenkins-on-AWS ) sudo yum update –y sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key sudo yum upgrade sudo dnf install java-17-amazon-corretto -y sudo yum install jenkins -.. 2024. 8. 22. [참고][AWS] 스프링 부트 jar 빌드와 AWS EC2 배포 방법!! ## 윈도우 ==> 인텔리J ==> 빌드(Gradle) ==> EC2 복사 (scp 활용) 00:00 - 개요 및 목차 00:34 - 간단한 스프링 어플리케이션 생성 04:41 - jar 파일로 생성 (Gradle) 05:40 - AWS EC2 빌리기 09:00 - EC2 접속 10:35 - EC2 자바 설치 12:15 - jar 파일 EC2로 전송 15:15 - EC2에서 jar 실행 2024. 8. 19. 이전 1 다음 반응형