Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d712eeb

Browse files
Merge pull request #93 from bytebase/a-branch-24
update
2 parents 7ffe172 + d9d3df8 commit d712eeb

File tree

2 files changed

+29
-61
lines changed

2 files changed

+29
-61
lines changed

‎.github/workflows/4-bb-export.yml‎

Lines changed: 29 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -46,40 +46,7 @@ jobs:
4646
id: process-sql
4747
if: steps.changed-files.outputs.any_changed == 'true'
4848
run: |
49-
call_api() {
50-
local url="1ドル"
51-
local method="2ドル"
52-
local data="3ドル"
53-
local description="4ドル"
54-
55-
echo "Calling API: $description"
56-
echo "URL: $url"
57-
58-
temp_file=$(mktemp)
59-
http_code=$(curl -s -w "%{http_code}" \
60-
--request "$method" "$url" \
61-
--header "Authorization: Bearer ${{ steps.bytebase-login.outputs.token }}" \
62-
--header "Content-Type: application/json" \
63-
--data "$data" \
64-
-o "$temp_file")
65-
66-
echo "Response (Status $http_code):"
67-
echo "Raw response:"
68-
cat "$temp_file"
69-
70-
# Check if response is valid JSON
71-
if jq empty "$temp_file" 2>/dev/null; then
72-
echo "Valid JSON response:"
73-
cat "$temp_file" | jq '.'
74-
else
75-
echo "WARNING: Invalid JSON response"
76-
cat "$temp_file"
77-
fi
78-
echo "------------------------"
79-
80-
cat "$temp_file"
81-
}
82-
49+
# Find and read manifest.toml
8350
MANIFEST_PATH=""
8451
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
8552
DIR_PATH=$(dirname "$file")
@@ -101,6 +68,7 @@ jobs:
10168
echo "Manifest contents:"
10269
cat "$MANIFEST_PATH"
10370
71+
# Parse TOML file
10472
read_toml() {
10573
local key="1ドル"
10674
python3 -c "import tomllib; print(tomllib.load(open('$MANIFEST_PATH', 'rb')).get('$key', ''))"
@@ -125,44 +93,44 @@ jobs:
12593
BASE_URL="${{ steps.bytebase-login.outputs.api_url }}"
12694
12795
# Create Sheet
128-
sheet_data=$(call_api \
129-
"$BASE_URL/projects/$PROJECT/sheets" \
130-
"POST" \
131-
"{\"title\":\"\",\"content\":\"$SQL_CONTENT\",\"type\":\"TYPE_SQL\",\"source\":\"SOURCE_BYTEBASE_ARTIFACT\",\"visibility\":\"VISIBILITY_PUBLIC\"}" \
132-
"Create Sheet")
96+
echo "Creating sheet..."
97+
sheet_response=$(curl -s -X POST "$BASE_URL/projects/$PROJECT/sheets" \
98+
-H "Authorization: Bearer ${{ steps.bytebase-login.outputs.token }}" \
99+
-H "Content-Type: application/json" \
100+
-d "{\"title\":\"\",\"content\":\"$SQL_CONTENT\",\"type\":\"TYPE_SQL\",\"source\":\"SOURCE_BYTEBASE_ARTIFACT\",\"visibility\":\"VISIBILITY_PUBLIC\"}")
133101
134-
SHEET_NAME=$(echo "$sheet_data" | jq -r '.name')
135-
echo "Sheet name: $SHEET_NAME"
102+
SHEET_NAME=$(echo "$sheet_response" | jq -r '.name')
103+
echo "Sheet created: $SHEET_NAME"
136104
137105
# Create Plan
138-
plan_data=$(call_api \
139-
"$BASE_URL/projects/$PROJECT/plans" \
140-
"POST" \
141-
"{\"steps\":[{\"specs\":[{\"id\":\"$STEP_ID\",\"export_data_config\":{\"target\":\"/instances/$INSTANCE/databases/$DATABASE\",\"format\":\"$FORMAT\",\"sheet\":\"$SHEET_NAME\"}}]}],\"title\":\"Export data from $DATABASE\",\"description\":\"EXPORT\"}" \
142-
"Create Plan")
106+
echo "Creating plan..."
107+
plan_response=$(curl -s -X POST "$BASE_URL/projects/$PROJECT/plans" \
108+
-H "Authorization: Bearer ${{ steps.bytebase-login.outputs.token }}" \
109+
-H "Content-Type: application/json" \
110+
-d "{\"steps\":[{\"specs\":[{\"id\":\"$STEP_ID\",\"export_data_config\":{\"target\":\"/instances/$INSTANCE/databases/$DATABASE\",\"format\":\"$FORMAT\",\"sheet\":\"$SHEET_NAME\"}}]}],\"title\":\"Export data from $DATABASE\",\"description\":\"EXPORT\"}")
143111
144-
PLAN_NAME=$(echo "$plan_data" | jq -r '.name')
145-
echo "Plan name: $PLAN_NAME"
112+
PLAN_NAME=$(echo "$plan_response" | jq -r '.name')
113+
echo "Plan created: $PLAN_NAME"
146114
147115
# Create Issue
148-
issue_data=$(call_api \
149-
"$BASE_URL/projects/$PROJECT/issues" \
150-
"POST" \
151-
"{\"approvers\":[],\"approvalTemplates\":[],\"subscribers\":[],\"title\":\"Issue: Export data from instances/$INSTANCE/databases/$DATABASE\",\"description\":\"SQL request from GitHub\",\"type\":\"DATABASE_DATA_EXPORT\",\"assignee\":\"\",\"plan\":\"$PLAN_NAME\"}" \
152-
"Create Issue")
116+
echo "Creating issue..."
117+
issue_response=$(curl -s -X POST "$BASE_URL/projects/$PROJECT/issues" \
118+
-H "Authorization: Bearer ${{ steps.bytebase-login.outputs.token }}" \
119+
-H "Content-Type: application/json" \
120+
-d "{\"approvers\":[],\"approvalTemplates\":[],\"subscribers\":[],\"title\":\"Issue: Export data from instances/$INSTANCE/databases/$DATABASE\",\"description\":\"SQL request from GitHub\",\"type\":\"DATABASE_DATA_EXPORT\",\"assignee\":\"\",\"plan\":\"$PLAN_NAME\"}")
153121
154-
ISSUE_NUMBER=$(echo "$issue_data" | jq -r '.name | split("/")[-1]')
122+
ISSUE_NUMBER=$(echo "$issue_response" | jq -r '.name | split("/")[-1]')
155123
ISSUE_LINK="${{ secrets.BYTEBASE_URL }}/projects/$PROJECT/issues/$ISSUE_NUMBER"
156-
echo "Issue link: $ISSUE_LINK"
124+
echo "Issue created: $ISSUE_LINK"
157125
158126
# Create Rollout
159-
rollout_data=$(call_api \
160-
"$BASE_URL/projects/$PROJECT/rollouts" \
161-
"POST" \
162-
"{\"plan\":\"$PLAN_NAME\"}" \
163-
"Create Rollout")
127+
echo "Creating rollout..."
128+
rollout_response=$(curl -s -X POST "$BASE_URL/projects/$PROJECT/rollouts" \
129+
-H "Authorization: Bearer ${{ steps.bytebase-login.outputs.token }}" \
130+
-H "Content-Type: application/json" \
131+
-d "{\"plan\":\"$PLAN_NAME\"}")
164132
165-
echo "Rollout created: $(echo "$rollout_data" | jq -r '.name')"
133+
echo "Rollout created: $(echo "$rollout_response" | jq -r '.name')"
166134
done
167135
168136
- name: Comment on PR
File renamed without changes.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /