분류 전체보기
-
젠킨스...4일지 2020. 10. 6. 22:10
잡(Job) 젠킨스에서 다루는 실행 가능한 작업을 말한다. 젠킨스 파이프라인 잡의 장점 프로그래밍 가능 모든 파이프라인 설정을 하나의 파일(Jenkinsfile)로 표현 가능 일반 코드처럼 버전 관리 가능 서술적인 문법 젠킨스 파이프라인 잡 만들기 젠킨스 대시보드에서 새로운 Item을 누른다. Pipeline을 선택하고 파이프라인의 이름을 작성후 OK를 누른다. 페이지 상단의 Pipeline 탭을 눌러 이동 후 파이프라인 스크립트를 입력한다. 저장을 눌러 완료한다. 전역 도구 환경 설정 페이지 젠킨스 파이프라인에서 사용될 툴을 설정할 수 있다. 설정 방법은 다음과 같다. 젠킨스 대시보드에서 Jenkins 관리를 누른다. Global Tool Configuration을 누른다. 사용하고자 하는 툴을 찾아 ..
-
자료구조...10일지 2020. 10. 6. 09:21
연결 자료구조 메모리에 연속적으로 저장되어 연결되는 것이 아니라 각 원소가 가진 포인터를 통해 다음 원소를 가리키는 것으로 연결된다. 순차 자료구조의 삽입과 삭제에 추가 연산이 필요하고 메모리 사용에 비효율적이라는 문제를 개선한 방법이다. 노드 자료구조에서는 연결 자료구조의 표현을 위한 데이터와 다음 원소를 가리키는 포인터의 묶음으로 이루어진 구조를 노드라고 한다. 데이터를 저장하는 부분을 데이터 필드(Data Field), 포인터 부분을 링크 필드(Link Field)라고 한다. 다음의 순차 자료구조로 표현된 데이터를 연결 자료구조로 표현하면 다음과 같이 표현된다. - 순차 자료구조 표현 인덱스 0 1 2 3 데이터 10 20 30 40 - 연결 자료구조 표현 ※ 연결 자료구조는 인덱스를 저장하는 것이..
-
젠킨스...3일지 2020. 10. 3. 13:17
젠킨스 잠금 해제 젠킨스 설치 이후 최초 젠킨스 페이지 접속 시 초기 비밀번호를 이용해 잠금을 해제해야 한다. 초기 비밀번호는 젠킨스 설치 위치의 로그 파일에서 확인할 수 있다. 젠킨스 설치 시 기본 설치 위치 32 bit - C:\Program Files (x86)\Jenkins 64 bit - C:\Program Files\Jenkins 로그 파일에서 찾아야 하는 내용 ************************************************************* ************************************************************* ************************************************************* Je..
-
젠킨스...2일지 2020. 10. 2. 16:22
젠킨스 설치 젠킨스는 다음과 같은 여러 방법을 통해 설치 및 실행이 가능하다. 서블릿 컨테이너 톰캣, 요나, 제타 등 스탠드얼론 애플리케이션 윈도우, 우분트, 레드햇, 페도라 리버스 프록시 서버 Nginx 도커 - 윈도우에 스탠드얼론 젠킨스 설치 자바 설치 자바 사이트에서 최신 버전의 자바 JRE를 다운로드하여 설치한다. 이후 커맨드 창에서 다음 명령을 실행해 자바가 잘 설치됐는지 확인한다. java -version 이후 환경변수 설정을 위해 다음 명령을 실행해 자바 설치 경로를 확인한 뒤 복사해둔다. where java 커맨드 창을 관리자 권한으로 다음 명령을 실행해 환경변수에 추가한다. setx -m JAVA_HOME "복사해둔 경로" 젠킨스 설치 젠킨스 사이트에서 최신 안정 버전 젠킨스를 다운로드 ..
-
순차 자료구조 - 선형 리스트(ArrayList)프로그래밍 기초/자료구조 2020. 10. 2. 12:49
순차 자료구조와 선형 리스트 순차 자료구조 데이터를 순서대로 저장하고 인덱스를 부여하여 관리하는 자료구조를 말한다. 배열을 이용해 리스트를 구현한 선형 리스트(또는 ArrayList)를 포함한다. 선형 리스트 데이터가 메모리에 물리적으로 연속적으로 저장되기 때문에 리스트 중간에서 데이터를 삽입하거나 삭제하는 연산을 하는 경우 데이터를 옮긴 후 연산을 처리해야 하는 오버헤드가 발생한다. - 삽입(Insert) 연산 기본적으로 ArrayList는 데이터를 삽입할 수 있는 공간(Capacity)이 정해져 있다. 그렇기에 기본적으로 데이터를 삽입하면 빈 공간에 데이터를 삽입하는 형태가 된다. * 원본 데이터 인덱스 0 1 2 3 4 데이터 10 20 30 40 리스트 끝에 데이터를 삽입하는 경우 빈 공간이 존재..
-
젠킨스...1일지 2020. 10. 1. 14:14
젠킨스란? 소프트웨어 개발 시 지속적 통합(Continuous Integration, 이후 CI) 서비스를 제공하는 툴이다. 젠킨스는 소프트웨어의 빌드, 테스트, 배포와 관련된 모든 종류의 작업을 자동화하는 데 사용할 수 있는 독립형 오픈소스 자동화 서버입니다. - Jenkins User Documentation 중 CI란? 개발자들이 작업한 내용(Commit)을 하나의 브랜치로 통합(Merge)하고 빌드하는 개발 방식을 말한다. 지속적인 통합은 초기에 그리고 자주 통합해서 "통합의 지옥"의 함정을 피하는 것을 내포하고 있다. 지속적인 통합은 재작업을 줄여서 비용과 시간을 줄이는데 초점이 맞추어져 있다. - 위키백과.지속적 통합 중 CI의 구성 요소 버전 관리 시스템 코드의 이력을 관리하는 툴로 SVN,..
-
자료구조...9일지 2020. 10. 1. 12:58
ArrayList 기능 메소드 구현 자료구조를 효율적으로 사용할 수 있는 기능을 추가한다. ArrayList.cpp /// /// ArrayList에 지정한 값이 존재하는지 확인한다. /// /// ArrayList에서 찾을 값 /// 값의 존재 여부 bool ArrayList::Contains(int value) { return IndexOf(value) != -1; } /// /// ArryList을 앞에서 부터 지정한 값을 검사해 인덱스를 반환한다. /// /// ArrayList에서 잦을 값 /// 값의 인덱스(없으면 -1) int ArrayList::IndexOf(int value) { for (int i = 0; i < m_count; i++) { if (m_items[i] == value) ..
-
자료구조...8일지 2020. 9. 30. 14:43
ArrayList 데이터 삭제 메소드 구현 데이터 삭제의 경우 공간을 축소하는 동작은 하지 않는다. 즉, 기존에 공간(Capacity)이 5인 ArrayList에 삽입 동작을 통해 공간이 10으로 증가했을 때, 다시 데이터를 삭제한다고 해서 공간을 5로 줄이는 동작은 하지 않는다. ArrayList.cpp /// /// ArrayList에서 가장 먼저 발견되는 값을 제거한다. /// /// 제거할 값 void ArrayList::Remove(int value) { // 저장된 값에서 지정된 값의 인덱스를 찾아 제거한다. for (int i = 0; i < m_count; i++) { if (m_items[i] == value) { MoveToLeft(i); return; } } } /// /// Arra..