pomme/.drone.jsonnet

63 lines
1.1 KiB
Text

local testing(version, arch) = {
kind: 'pipeline',
type: 'docker',
name: '%s-%s' % [version, arch],
platform: {
arch: arch,
},
steps: [
{
name: 'lint-backend',
image: 'golangci/golangci-lint',
commands: [
'make lint-backend',
],
},
{
name: 'lint-frontend',
image: 'guergeiro/pnpm',
commands: [
'make lint-frontend',
],
},
{
name: 'cache',
image: 'golang:%s' % [version],
commands: [
'go mod tidy',
],
depends_on: [
'lint-backend',
'lint-frontend',
],
volumes: [
{
name: 'cache',
path: '/go',
},
],
},
{
name: 'test',
image: 'golang:%s' % [version],
commands: [
'make test-backend',
],
depends_on: [
'cache',
],
volumes: [
{
name: 'cache',
path: '/go',
},
],
},
],
};
[
testing('1.19', 'amd64'),
testing('1.19', 'arm64'),
testing('1.20', 'amd64'),
testing('1.20', 'arm64'),
]