| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 1 | pipeline { |
| 2 | agent { |
| 3 | kubernetes { |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 4 | yaml ''' |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 5 | apiVersion: v1 |
| 6 | kind: Pod |
| 7 | spec: |
| 8 | containers: |
| 9 | - name: golang |
| 10 | image: golang:1.22.2-alpine3.19 |
| 11 | tty: true |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 12 | - name: node |
| 13 | image: node:24.0.0-alpine3.20 |
| 14 | tty: true |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 15 | - name: nix |
| 16 | image: giolekva/jenkins-nix-agent:latest |
| 17 | command: ["/usr/bin/tini", "-s", "-g", "--"] |
| 18 | args: ["/bin/sleep", "infinity"] |
| 19 | tty: true |
| 20 | env: |
| 21 | - name: HOME |
| 22 | value: /home/jenkins |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 23 | ''' |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 24 | } |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 25 | } |
| 26 | stages { |
| gio | c76baed | 2024-08-19 22:04:57 +0400 | [diff] [blame] | 27 | stage('build/test') { |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 28 | steps { |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 29 | container('nix') { |
| 30 | dir('core/auth/ui') { |
| 31 | sh ''' |
| 32 | nix develop --accept-flake-config --command bash -euc ' |
| 33 | go mod tidy |
| 34 | go build *.go |
| 35 | go test ./... |
| 36 | go test -tags=e2e -count=1 -timeout=10m -v ./e2e |
| 37 | ' |
| 38 | ''' |
| 39 | } |
| 40 | dir('apps/app-runner') { |
| 41 | sh ''' |
| 42 | nix develop --accept-flake-config --command bash -euc ' |
| 43 | go mod tidy |
| 44 | go build *.go |
| 45 | go test ./... |
| 46 | ' |
| 47 | ''' |
| 48 | } |
| 49 | dir('core/auth/memberships') { |
| 50 | sh ''' |
| 51 | nix develop --accept-flake-config --command bash -euc ' |
| 52 | go mod tidy |
| 53 | go build *.go |
| 54 | go test ./... |
| 55 | ' |
| 56 | ''' |
| 57 | } |
| 58 | dir('core/port-allocator') { |
| 59 | sh ''' |
| 60 | nix develop --accept-flake-config --command bash -euc ' |
| 61 | go mod tidy |
| 62 | go build *.go |
| 63 | go test ./... |
| 64 | ' |
| 65 | ''' |
| 66 | } |
| 67 | } |
| 68 | container('golang') { |
| 69 | dir('core/installer') { |
| 70 | sh 'go mod tidy' |
| 71 | sh 'go build cmd/*.go' |
| 72 | sh 'go run cuelang.org/go/cmd/cue fmt app_configs/*.cue --check' |
| 73 | sh 'go test ./...' |
| 74 | } |
| 75 | } |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 76 | container('node') { |
| 77 | sh "apk update" |
| 78 | sh "apk add gcc g++ make musl-dev python3 py3-setuptools" |
| gio | c31bf14 | 2025-06-16 07:48:20 +0000 | [diff] [blame] | 79 | dir('apps/canvas/config') { |
| 80 | sh 'npm install' |
| 81 | sh 'npm run format-check' |
| 82 | sh 'npm run lint' |
| gio | 9b7421a | 2025-06-18 12:31:13 +0000 | [diff] [blame] | 83 | sh 'npm run test' |
| gio | c31bf14 | 2025-06-16 07:48:20 +0000 | [diff] [blame] | 84 | } |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 85 | dir('apps/canvas/back') { |
| 86 | sh 'npm install' |
| 87 | sh 'npm run format-check' |
| gio | 8d0f635 | 2025-05-11 13:29:33 +0000 | [diff] [blame] | 88 | sh 'npm run lint' |
| gio | 9b7421a | 2025-06-18 12:31:13 +0000 | [diff] [blame] | 89 | sh 'npm run test' |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 90 | } |
| 91 | dir('apps/canvas/front') { |
| 92 | sh 'npm install' |
| 93 | sh 'npm run format-check' |
| gio | 8d0f635 | 2025-05-11 13:29:33 +0000 | [diff] [blame] | 94 | sh 'npm run lint' |
| gio | d002661 | 2025-05-08 13:00:36 +0000 | [diff] [blame] | 95 | } |
| 96 | } |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 97 | } |
| 98 | } |
| 99 | } |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 100 | post { |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 101 | success { |
| 102 | gerritReview labels: [Verified: 1], message: env.BUILD_URL |
| 103 | } |
| 104 | unstable { |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 105 | gerritReview labels: [Verified: 0], message: env.BUILD_URL |
| 106 | } |
| gio | a40058c | 2024-04-12 10:20:49 +0400 | [diff] [blame] | 107 | failure { |
| 108 | gerritReview labels: [Verified: -1], message: env.BUILD_URL |
| 109 | } |
| 110 | } |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 111 | } |