.gitlab-ci.yml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. image: golang:alpine
  2. before_script:
  3. - apk update
  4. - apk --no-cache --no-progress add --virtual build-deps build-base git
  5. stages:
  6. - test
  7. - build
  8. - execute
  9. - deploy
  10. Compile LESS:
  11. image: golang:alpine
  12. stage: test
  13. script:
  14. - mkdir -p $GOPATH/src/gitote
  15. - cd $GOPATH/src/gitote
  16. - git clone https://gitlab.com/gitote/gitote.git gitote
  17. - cd gitote
  18. - make less
  19. Bindata:
  20. image: golang:alpine
  21. stage: test
  22. script:
  23. - mkdir -p $GOPATH/src/gitote
  24. - cd $GOPATH/src/gitote
  25. - git clone https://gitlab.com/gitote/gitote.git gitote
  26. - cd gitote
  27. - wget https://gitlab.com/gitote/bindata/raw/master/go-bindata
  28. - make bindata
  29. Clean:
  30. image: golang:alpine
  31. stage: test
  32. script:
  33. - mkdir -p $GOPATH/src/gitote
  34. - cd $GOPATH/src/gitote
  35. - git clone https://gitlab.com/gitote/gitote.git gitote
  36. - cd gitote
  37. - make clean
  38. Build:
  39. image: golang:alpine
  40. stage: build
  41. script:
  42. - mkdir -p $GOPATH/src/gitote
  43. - cd $GOPATH/src/gitote
  44. - git clone https://gitlab.com/gitote/gitote.git gitote
  45. - cd gitote
  46. - make build
  47. Build Dev:
  48. image: golang:alpine
  49. stage: build
  50. script:
  51. - mkdir -p $GOPATH/src/gitote
  52. - cd $GOPATH/src/gitote
  53. - git clone https://gitlab.com/gitote/gitote.git gitote
  54. - cd gitote
  55. - make build-dev
  56. Build Dev Race:
  57. image: golang:latest
  58. before_script:
  59. - apt-get update -qq
  60. - apt-get install -y zip unzip
  61. stage: build
  62. script:
  63. - mkdir -p $GOPATH/src/gitote
  64. - cd $GOPATH/src/gitote
  65. - git clone https://gitlab.com/gitote/gitote.git gitote
  66. - cd gitote
  67. - make build-dev-race
  68. Build Prod:
  69. image: golang:latest
  70. before_script:
  71. - apt-get update -qq
  72. - apt-get install -y zip unzip
  73. stage: build
  74. script:
  75. - mkdir -p $GOPATH/src/gitote
  76. - cd $GOPATH/src/gitote
  77. - git clone https://gitlab.com/gitote/gitote.git gitote
  78. - cd gitote
  79. - wget https://gitlab.com/gitote/bindata/raw/master/go-bindata
  80. - make bindata
  81. - make build
  82. Admin:
  83. image: golang:alpine
  84. stage: execute
  85. script:
  86. - mkdir -p $GOPATH/src/gitote
  87. - cd $GOPATH/src/gitote
  88. - git clone https://gitlab.com/gitote/gitote.git gitote
  89. - cd gitote
  90. - go build
  91. - ./gitote admin
  92. Hook:
  93. image: golang:alpine
  94. stage: execute
  95. script:
  96. - mkdir -p $GOPATH/src/gitote
  97. - cd $GOPATH/src/gitote
  98. - git clone https://gitlab.com/gitote/gitote.git gitote
  99. - cd gitote
  100. - go build
  101. - ./gitote hook
  102. Import:
  103. image: golang:alpine
  104. stage: execute
  105. script:
  106. - mkdir -p $GOPATH/src/gitote
  107. - cd $GOPATH/src/gitote
  108. - git clone https://gitlab.com/gitote/gitote.git gitote
  109. - cd gitote
  110. - go build
  111. - ./gitote import
  112. Cert:
  113. image: golang:alpine
  114. stage: execute
  115. script:
  116. - mkdir -p $GOPATH/src/gitote
  117. - cd $GOPATH/src/gitote
  118. - git clone https://gitlab.com/gitote/gitote.git gitote
  119. - cd gitote
  120. - go build
  121. - ./gitote cert --help
  122. Serv:
  123. image: golang:alpine
  124. stage: execute
  125. script:
  126. - mkdir -p $GOPATH/src/gitote
  127. - cd $GOPATH/src/gitote
  128. - git clone https://gitlab.com/gitote/gitote.git gitote
  129. - cd gitote
  130. - go build
  131. - ./gitote serv --help
  132. Web:
  133. image: golang:alpine
  134. stage: execute
  135. script:
  136. - mkdir -p $GOPATH/src/gitote
  137. - cd $GOPATH/src/gitote
  138. - git clone https://gitlab.com/gitote/gitote.git gitote
  139. - cd gitote
  140. - go build
  141. - ./gitote web & sleep 20 ; kill $! || echo $?
  142. DockerHub:
  143. image: docker:latest
  144. stage: deploy
  145. services:
  146. - docker:dind
  147. script:
  148. - mkdir -p $GOPATH/src/gitote
  149. - cd $GOPATH/src/gitote
  150. - git clone https://gitlab.com/gitote/gitote.git gitote
  151. - cd gitote
  152. - docker login -u yoginth -p $CI_REGISTRY_PASSWORD docker.io
  153. - docker build -t gitote/gitote .
  154. - docker push gitote/gitote:latest
  155. only:
  156. - master