pipeline {
    agent {
        kubernetes {
			yaml '''
                apiVersion: v1
                kind: Pod
                spec:
                  containers:
                  - name: golang
                    image: golang:1.22.2-alpine3.19
                    tty: true
                  - name: node
                    image: node:24.0.0-alpine3.20
                    tty: true
            '''
		}
    }
    stages {
        stage('build/test') {
            steps {
                container('node') {
                    sh "apk update"
                    sh "apk add gcc g++ make musl-dev python3 py3-setuptools"
                    dir('apps/canvas/back') {
                        sh 'npm install'
                        sh 'npm run format-check'
                        sh 'npm run lint'
                    }
                    dir('apps/canvas/front') {
                        sh 'npm install'
                        sh 'npm run format-check'
                        sh 'npm run lint'
                    }
                }
				container('golang') {
                	dir('core/installer') {
                		sh 'go mod tidy'
                		sh 'go build cmd/*.go'
                		sh 'go test ./...'
					}
                    dir('core/auth/memberships') {
                        sh 'go mod tidy'
                		sh 'go build *.go'
                		sh 'go test ./...'
					}
                    dir('core/port-allocator') {
                        sh 'go mod tidy'
                		sh 'go build *.go'
                		sh 'go test ./...'
					}
				}
            }
        }
    }
	post {
        success {
            gerritReview labels: [Verified: 1], message: env.BUILD_URL
        }
        unstable {
		    gerritReview labels: [Verified: 0], message: env.BUILD_URL
		}
        failure {
            gerritReview labels: [Verified: -1], message: env.BUILD_URL
        }
    }
}