blob: 3a0b719c2bf33ab461d2ae744c7abb96dea4043d [file] [log] [blame]
#!/bin/sh
set -e
SCRIPT_DIR="$( cd "$( dirname "$0" )" && pwd )"
LAKE_ENDPOINT=${LAKE_ENDPOINT-'http://localhost:8080'}
LAKE_PIPELINE_URL=$LAKE_ENDPOINT/pipelines
debug() {
$SCRIPT_DIR/compile-plugins.sh -gcflags=all="-N -l"
dlv debug
}
run() {
$SCRIPT_DIR/compile-plugins.sh
go run $SCRIPT_DIR/../main.go
}
jira_source_post() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/sources" --data '
{
"name": "test-jira-source",
"endpoint": "'"$JIRA_ENDPOINT"'",
"basicAuthEncoded": "'"$JIRA_BASIC_AUTH_ENCODED"'",
"epicKeyField": "'"$JIRA_ENDPOINT"'",
"storyPointField": "'"$JIRA_ISSUE_STORYPOINT_FIELD"'",
}
' | jq
}
jira_source_post_full() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/sources" --data '
{
"name": "test-jira-source",
"endpoint": "'"$JIRA_ENDPOINT"'",
"basicAuthEncoded": "'"$JIRA_BASIC_AUTH_ENCODED"'",
"epicKeyField": "'"$JIRA_ENDPOINT"'",
"storyPointField": "'"$JIRA_ISSUE_STORYPOINT_FIELD"'",
"typeMappings": {
"Story": {
"standardType": "Requirement",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
},
"已解决": {
"standardStatus": "Resolved"
}
}
},
"Incident": {
"standardType": "Incident",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
}
}
},
"Bug": {
"standardType": "Bug",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
}
}
}
}
}' | jq
}
jira_source_post_fail() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/sources" --data @- <<' JSON' | jq
{
"name": "test-jira-source-fail",
"endpoint": "https://merico.atlassian.net/rest",
"basicAuthEncoded": "basicAuth",
"epicKeyField": "epicKeyField",
"storyPointField": "storyPointField",
"typeMappings": "ehhlow"
}
JSON
}
jira_source_put() {
curl -v -XPUT "$LAKE_ENDPOINT/plugins/jira/sources/$1" --data @- <<' JSON' | jq
{
"name": "test-jira-source-updated",
"endpoint": "https://merico.atlassian.net/rest",
"basicAuthEncoded": "basicAuth",
"epicKeyField": "epicKeyField",
"storyPointField": "storyPointField",
}
JSON
}
jira_source_put_full() {
curl -v -XPUT "$LAKE_ENDPOINT/plugins/jira/sources/$1" --data '
{
"name": "test-jira-source-updated",
"endpoint": "'"$JIRA_ENDPOINT"'",
"basicAuthEncoded": "'"$JIRA_BASIC_AUTH_ENCODED"'",
"epicKeyField": "'"$JIRA_ENDPOINT"'",
"storyPointField": "'"$JIRA_ISSUE_STORYPOINT_FIELD"'",
"typeMappings": {
"Story": {
"standardType": "Requirement",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
},
"已解决": {
"standardStatus": "Resolved"
}
}
},
"Incident": {
"standardType": "Incident",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
}
}
},
"Bug": {
"standardType": "Bug",
"statusMappings": {
"已完成": {
"standardStatus": "Resolved"
}
}
}
}
}' | jq
}
jira_source_list() {
curl -v "$LAKE_ENDPOINT/plugins/jira/sources" | jq
}
jira_source_get() {
curl -v "$LAKE_ENDPOINT/plugins/jira/sources/$1" | jq
}
jira_source_delete() {
curl -v -XDELETE "$LAKE_ENDPOINT/plugins/jira/sources/$1"
}
jira_typemapping_post() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings" --data @- <<' JSON' | jq
{
"userType": "userType",
"standardType": "standardType"
}
JSON
}
jira_typemapping_put() {
curl -v -XPUT "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2" --data @- <<' JSON' | jq
{
"standardType": "standardTypeUpdated"
}
JSON
}
jira_typemapping_delete() {
curl -v -XDELETE "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2"
}
jira_typemapping_list() {
curl -v "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings" | jq
}
jira_statusmapping_post() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2/status-mappings" --data @- <<' JSON' | jq
{
"userStatus": "userStatus",
"standardStatus": "standardStatus"
}
JSON
}
jira_statusmapping_put() {
curl -v -XPUT "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2/status-mappings/$3" --data @- <<' JSON' | jq
{
"standardStatus": "standardStatusUpdated"
}
JSON
}
jira_statusmapping_delete() {
curl -v -XDELETE "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2/status-mappings/$3"
}
jira_statusmapping_list() {
curl -v "$LAKE_ENDPOINT/plugins/jira/sources/$1/type-mappings/$2/status-mappings" | jq
}
jira_echo() {
curl -v -XPOST "$LAKE_ENDPOINT/plugins/jira/echo" --data @- <<' JSON' | jq
{
"plugin": "jira",
"options": {
"boardId": 8
}
}
JSON
}
pipeline_new() {
curl -v -XPOST $LAKE_PIPELINE_URL --data @- <<' JSON' | jq
{
"name": "test-all",
"tasks": [
[
{
"plugin": "jira",
"options": {
"sourceId": 1,
"boardId": 8
}
},
{
"plugin": "jenkins",
"options": {}
}
]
]
}
JSON
}
pipelines() {
curl -v $LAKE_PIPELINE_URL'?'$1 | jq
}
pipeline() {
curl -v $LAKE_PIPELINE_URL/$1 | jq
}
pipeline_cancel() {
curl -v -XDELETE $LAKE_PIPELINE_URL/$1
}
pipeline_tasks() {
curl -v $LAKE_PIPELINE_URL/$1/tasks'?'$2 | jq
}
jira() {
curl -v -XPOST $LAKE_PIPELINE_URL --data '
{
"name": "test-jira",
"tasks": [
[
{
"plugin": "jira",
"options": {
"sourceId": '$1',
"boardId": '$2',
"tasks": ['"$3"']
}
}
]
]
}
' | jq
}
gitlab() {
curl -v -XPOST $LAKE_PIPELINE_URL --data @- <<' JSON'
{
"name": "test-gitlab",
"tasks": [
[
{
"plugin": "gitlab",
"options": {
"projectId": 8967944,
"tasks": ["collectMrs"]
}
}
]
]
}
JSON
}
github() {
curl -v -XPOST $LAKE_PIPELINE_URL --data @- <<' JSON'
{
"name": "test-github",
"tasks": [
[
{
"plugin": "github",
"options": {
"repo": "lake",
"owner": "merico-dev",
"tasks": ["collectCommits"]
}
}
]
]
}
JSON
}
jenkins() {
curl -v -XPOST $LAKE_PIPELINE_URL --data @- <<' JSON'
{
"name": "test-jenkins",
"tasks": [
[
{
"plugin": "jenkins",
"options": {}
}
]
]
}
JSON
}
ae() {
curl -v -XPOST $LAKE_PIPELINE_URL --data @- <<' JSON'
{
"name": "test-ae",
"tasks": [
[
{
"plugin": "ae",
"options": {
"projectId": 13
}
}
]
]
}
JSON
}
truncate() {
SQL=$()
echo "SET FOREIGN_KEY_CHECKS=0;"
echo 'show tables' | mycli local-lake | tail -n +2 | xargs -I{} -n 1 echo "truncate table {};"
echo "SET FOREIGN_KEY_CHECKS=1;"
}
lint() {
golangci-lint run -v
}
"$@"