반응형 분류 전체보기401 [Jenkins] ERROR: script returned exit code 해결 젠킨스에서 "script returned exit code 20"에러가 발생했다. 해결방법은 너무나도 간단했다. 먼저, Jenkins의 파이프라인과 소스코드, Jenkins 로그이다. - Jenkins pipeline pipeline { agent any stages { stage('Git-checkout') { steps{ git branch: 'main', credentialsId: 'park', url: 'http://gitlab.park-duck.world/developer_c/proj-test-c.git' } } stage('Build') { steps{ sh 'gcc main.c' sh './a.out > index.html' } } } } - main.c #include typedef uni.. 프로그래밍/Jenkins 2023. 5. 8. [Jenkins] ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job. 해결하기 ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job 에러가 출력되었다. - Jenkins log Started by user park Running as SYSTEM Building in workspace /var/lib/jenkins/workspace/build-gcc The recommended git tool is: NONE using credential park Cloning the remote Git repository Cloning repository http://gitlab.park-duck.world/developer_c/proj-test-c.git > gi.. 프로그래밍/Jenkins 2023. 5. 8. [Jenkins] Git&Maven 설치, 설정하기 1. Github plugin&Maven 설치 이전 Jenkins 설치 과정에서 추천하는 plugin을 설치하였기 때문에 Github plugin도 설치되어있을 가능성이 크다. 그래도 확인은 해보자. [Dashboard] - [Jenkins 관리] - [플러그인 관리] - [Installed plugins] - [Github plugin] 확인 만약 없다면 [Dashboard] - [Jenkins 관리] - [플러그인 관리] - [Available plugins]에서 설치한다. 같은 방법으로 Maven도 설치한다. 2. Git&Maven 설정 [Dashboard] - [Jenkins 관리] - [Global Tool Configuration]에서 [Git installations]를 아래와 같이 입력. .. 프로그래밍/Jenkins 2023. 4. 16. [Jenkins] shell scripts 빌드 생성 젠킨스에서 빌드, 컴파일, 배포를 하는 단위를 Item이라고 정의한다. 1. Item 생성 먼저 Item의 이름을 지정해 준 뒤 Freestyle project를 클릭한다. 소스코드 관리, 빌드 환경 등은 나중에 해보기로 하고 [Build Steps]에서 [Execute shell]을 선택. Excute shell에서 shell 명령어로 "Hello Jenkins"을 입력하고 저장. (C의 printf와 같음) 2. Build 대쉬보드로 들어가 생성했던 Item 선택 [지금 빌드] 를 선택하면 해당 shell scripts가 실행되고, [Build History]에 남게 된다 3. 결과 확인 Build를 하게 되면 [Build History]에 빌드 번호(#1)가 나타나고 시간이 나타나는데, 시간은 Do.. 프로그래밍/Jenkins 2023. 4. 16. [Jenkins] 계정&Tool 설정 2023.04.12 - [프로그래밍/Docker] - [Docker] Jenkins 설치 위 링크에서 Jenkins 설치&플러그인 설치까지 진행했다. Jenkins 초기 비밀번호도 위 링크를 따라가면 적혀있고, Dokcer가 아니더라도 경로는 같으니 참조할 것. 1. Jenkins Admin 계정 생성 2. Jenkins 주소 확인 3. Global Tool Configuration Global Tool Configuration에는 JDK, Maven, Git, Gradle 등을 설정할 수 있다. JDK는 Jenkins 설치 시 자동 설정 되었고, 필요시 경로를 변경하여 원하는 버전의 JDK로 설정할 수 있다. 프로그래밍/Jenkins 2023. 4. 15. [Docker] Jenkins 설치 1. Docker Hub - Jenkins 접속 https://hub.docker.com/r/jenkins/jenkins 2. Jenkins 설치 docker pull jenkins/jenkins 3. DockerContainer 생성 아래의 링크를 참고. https://github.com/jenkinsci/docker docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 --restart=on-failure --name=jenkins-server jenkins/jenkins:lts-jdk11 옵션은 docker run --help로 출력가능. 그러나 IMAGE [COMMAND]에 대한 옵션은 어떻게 출력하지...? 일단 .. 프로그래밍/Docker 2023. 4. 12. [Docker] wsl 무한대기 (feat. Docker Desktop requires a newer WSL kernel version) 서버에서 GitLab과 Jenkins를 돌리려는데 Jenkins를 잘 모르겠다. 스케줄링과 같은(더 많은 서비스가 있겠지만) 개념으로 .sh을 실행하는 것 같긴 한데, 익숙지가 않아서 인프런에 강의를 구매. 근데 Windows or Mac으로 Docker를 돌리네... ? Docker가 유행이기도 하고 리눅스 방법으로 찾기보다는 그냥 따라 해보자는 마음으로 Windows에서 수행 Windows에서 Docker Desktop을 설치하고 실행하면 아래와 같은 "Docker Desktop requires a newer WSL kernel version."가 나타나는데 Power shell에 명령어를 입력해도 0%에서 올라가지 않는다. 경고창에 링크되어 있는 사이트를 들어가면 5단계부터 보여줘서 뭔가도 싶지만 .. 프로그래밍/Docker 2023. 4. 12. [NGINX] DNS Proxy 설정 일반 사이트를 보면 www.example.com, A.example.com, B.example.com 식으로 페이지가 관리되는 것을 볼 수 있다. 일단 도메인이 필요하다. 무료 도메인을 하려 했는데, 기껏 회원가입하고 이상한 도메인 요청을 했는데, 너무 느려서 유료도메인을 샀다. 5분만에 등록완료 문자가 오더라. 가비아에서 이벤트 도메인 1년 4400원 이때까지 IP와 도메인을 가렸는데, 귀찮다 호스트에 적혀있는 www, gitlab, jenkins가 있는데 A레코드라고 하며 정확한건 잘 모르겠다. 어쨋건 www.park-duck.world, gitlab.park-duck.world, jenkins.park-duck.world 를 각각 나의 IP 110.13.154.24로 전환하게 한다. 왜 다른 주소를.. 1. 개인 프로젝트/0. 프로젝트 집짓기 2023. 4. 7. [Ubuntu 18.04] Jenkins 설치 찍어뒀던 사진이 다 날아갔다. 기억을 더듬어 참고했던 블로그를 다시 찾았다. 대부분의 블로그가 18.04는 JDK8을 설치하라 했는데, NO_PUBKEY였나..? 에러가 나는 것이다. 다른 사람의 조언대로 KEY를 새로 등록도 해보고 ... 별짓 다했는데 안되더라. 아래 블로그를 보니 공식 도큐먼트 보는 것을 습관화 하자며 링크를 하나 달았는데, 어디서 찾은거지 ... ? https://velog.io/@kairos7578/Ubuntu-18.04-Jenkins%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%84%A4%EC%A0%95 내가 본 공식 문서랑 다른 거다. JDK11을 설치한다. 자동배포까지 포스팅해서 다시 찾아볼 예정, 어쨌건 위 블로그와 같이 진행하니 오류 없이 진행되었다. 유일하.. 1. 개인 프로젝트/0. 프로젝트 집짓기 2023. 4. 7. [C] 공용체(union) 변수 사용 (feat. 콜론 연산자) 제목에서 알 수 있다시피, 메모리를 공유하는 변수가 존재한다. 만약 0b00010100(20)이라는 숫자에서 bit 4번째 숫자만 0으로 바꾸고 싶다면? 비트마스킹을 이용하여 0b11101111을 and 연산을 할 수 있다. 상황에 따라 인덱스를 접근하는 함수를 만들고, 어려운 변수 값을 집어넣고... 연산하고... 이게 한눈에 보기 어렵다는 것이다 -> 가독성이 떨어짐 공용체를 사용하면 좀 더 보기 쉽게 사용이 가능하다. (이외에 임베디드쪽에서 ON/OFF 식의 센서 값을 모아서 관리하거나, 프로토콜 프레임 등 규칙성이 있는 정보를 관리하는데 효율적으로 사용된다) 아래는 소스코드. #include typedef union{ unsigned char BYTE; struct{ unsigned char bi.. 프로그래밍/C,C++,C# 2023. 4. 7. [GitLab] Local GitLab 설치 먼저 나의 사용환경은 Ubuntu 18.04 이며 GitLab 설치의 경우 18, 20, 22 모든 버전이 동일하다. 먼저 GitLab에는 CE(Community Edtion)와 EE(Enterprise Edition)버전이 있는데, CE는 Core만 제공해주는 형태에 무료버전이고, EE는 기업용으로 추가 기능이 존재한다. 예를 들면 CE는 Reviewer가 한 명, EEsms Reviewer가 두 명 아래와 같이 설치를 진행해보자. 1. 사전 종속 패키지 설치 sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates tzdata perl 2. GitLab 패키지 설치 curl https://packages.gitlab.. 1. 개인 프로젝트/0. 프로젝트 집짓기 2023. 4. 2. [C/C++] 간편하게 LOG 남기기(feat. 가변인자) C언어에 가변인자라는 개념이 존재하는데 파이썬에서 *args 또는 **kargs와 같은 개념이라 생각할 수 있다. 백문이 불여일타 사용환경 : debian gcc (컴파일러에 따라 조금씩 다를 수 있으니 참고) #include #define LOG(msg, ...) printf("%s파일에서 %s함수에서 %d번째 줄 메시지 : " msg "\n",__FILE__, __FUNCTION__, __LINE__, ##__VA_ARGS__) void main(){ LOG("message %d %f %s",999, 3.14, "Hello"); } 보통 디버깅을 위한 LOG문을 위와 같이 매크로함수로 정의하여 사용한다. (매크로 함수뿐만 아니라 일반적인 함수에서도 사용이 가능하다) printf를 사용하면 사용할 때마.. 프로그래밍/C,C++,C# 2023. 3. 29. 이전 1 ··· 5 6 7 8 9 10 11 ··· 34 다음 반응형