반응형

분류 전체보기 78

[Go] fmt format 에서 Percent sign 사용하기

Go에서 fmt 포맷팅 메소드(Printf,Fprintf,Sprintf)에서 Percent sign(%)를 escape하는 방법에 대해서 알아보자. 우선 fmt 포맷팅 메소드 Percent sign(%)를 그대로 사용하면 어떻게 되는 지 확인해보자. Code: package main import "fmt" func main() { i := 90 fmt.Printf("%d % Completed", i) } Output: 90 %!C(MISSING)ompleted 결과를 확인해보면 Percent sign이 출력되지 않는 것을 확인할 수 있다. Printf,Fprintf,Sprintf에서 문자열 형식을 사용할 때는 Percent sign(%)를 사용하여 형식을 지정하기 때문이다. Percent sign in ..

Go 2023.02.22

[Go] Read File Line by Line

Go에서 File를 Line별로 읽는 방법에 대해서 알아보자. bufio 패키지를 이용해서 해당 작업을 수행할 수 있다. 우선 읽을 파일을 NewScanner 함수로 보내서 Scanner를 반환받자. Scanner는 개행으로 구분된 텍스트 행의 파일과 같은 데이터를 읽기 위한 편리한 인터페이스를 제공한다. func (s *Scanner) Scan() bool {} func (s *Scanner) Text() string {} Scan 메서드는 Sacnner를 다음 Token으로 이동시킨다. 입력의 끝에 도달하거나 오류가 발생하면 False를 반환한다. Text 메서드는 Scan 메서드 호출로 생성된 가장 최근 Token를 반환한다. 예제 /path/my/example.txt line1 line2 line..

Go 2023.02.21

[Go] Reading/Writing files in Go

Go에서 파일 읽기/쓰기에서 대해서 알아보자. 기존에 io/ioutil 패키지를 사용해서 파일 읽기/쓰기를 했을 것이다. 하지만 Go 1.16 부터 io/ioutil 패키지가 deprecated 되었다. 해당 패키지에서 제공하던 모든 기능이 다른 패키지로 이동되었다. ioutil.ReadFile() 메소드를 확인해보면 관련해서 다른 패키지를 호출하도록 설명이 되어 있다. ioutil.WriteFile() 확인해봐도 마찬지로 다른 패키지를 호출하도록 설명이 되어 있다. io/ioutil 패키지에 있던 함수들이 이동한 곳은 아래와 같다. Discard => io.Discard NopCloser => io.NopCloser ReadAll => io.ReadAll ReadDir => os.ReadDir (not..

Go 2023.02.20

[Go]Multiline strings in Go

Go 에서 여러 줄 문자열을 작성하는 방법에 대해서 알아보자. 1. Interpreted string 큰 따옴표와 함께 \n 와 같은 이스케이프 문자를 사용하면 여러 줄 문자열을 사용할 수 있다. func main() { lines := "Build simple, secure, scalable systems with Go\n" + "- An open-source programming language supported by Google\n" + "- Easy to learn and great for teams\n" + "- Built-in concurrency and a robust standard library\n" + "- Large ecosystem of partners, communities, an..

Go 2023.02.18

Github WebHooks 연동하여 Jenkins 빌드 자동화

Jenkins로 배우는 CI/CD 파이프라인 구축 1. Install and Run Jenkins With Docker Compose 2. Jenkins Pipeline 개념 및 예제 3. Github WebHooks 연동하여 Jenkins 빌드 자동화 4. Jenkins Multibranch Pipeline: 효과적인 브랜치 관리와 CI/CD 구축 GitHub Webhook을 사용하여 GitHub 리포지토리에 커밋이 발생할 때 Jenkins에서 자동으로 빌드되도록 설정해 보겠습니다. 1. Github Personal Access Token 생성 Github private repository 를 이용하고 있으므로 먼저 GitHub 개인 액세스 토큰을 생성해야 합니다. GitHub 웹사이트에서 프로필 아이..

CI・CD 2023.01.27

Jenkins Pipeline 개념 및 예제

Jenkins로 배우는 CI/CD 파이프라인 구축 1. Install and Run Jenkins With Docker Compose 2. Jenkins Pipeline 개념 및 예제 3. Github WebHooks 연동하여 Jenkins 빌드 자동화 4. Jenkins Multibranch Pipeline: 효과적인 브랜치 관리와 CI/CD 구축 Jenkins Pipeline 개념 젠킨스 파이프라인은 연속적인 작업들을 묶어서 관리할 수 있게 만드는 젠킨스 플러그인입니다. 파이프라인을 작성하는 데에는 두 가지 문법이 존재합니다. Declarative pipeline { agent any stages { stage('Build') { steps { // } } stage('Test') { steps { ..

CI・CD 2023.01.26
반응형