Skip to content

Commit d93f87c

Browse files
committed
fix: Ubuntu Serverアーカイブの選択ロジックを修正
問題: - CData Sync v25.1(Ubuntu 24.04.2 LTS 64bit)など、Ubuntuを含む他のアーカイブが誤って選択されていた - ループで最後にマッチしたアーカイブが使用されていた 修正: - 正規表現を '^Ubuntu Server' に変更して、Ubuntu Serverで始まるものだけを対象に - breakを追加して最初にマッチしたアーカイブを使用 - これにより正しいUbuntu Server 24.04.x LTSが選択される
1 parent 7fcafd3 commit d93f87c

File tree

2 files changed

+177
-1
lines changed

2 files changed

+177
-1
lines changed

scripts/deploy.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,9 +169,11 @@ def initial_archive_id
169169
# https://manual.sakura.ad.jp/cloud/server/os-packages/archive-iso/list.html
170170
puts "- Name: #{arch['Name']}"
171171
# 通常版Ubuntu 24.04を使用(disk/config APIでSSH鍵設定、@notesでスタートアップスクリプト実行)
172-
if /ubuntu/i =~ arch['Name'] && /24\.04/i =~ arch['Name'] && !(/cloudimg/i =~ arch['Name']) then
172+
# "Ubuntu Server"で始まるものだけを対象にして、CData Syncなどを除外
173+
if /^Ubuntu Server/i =~ arch['Name'] && /24\.04/i =~ arch['Name'] && !(/cloudimg/i =~ arch['Name']) then
173174
archiveid = arch['ID']
174175
selected_name = arch['Name']
176+
break # 最初にマッチしたものを使用
175177
end
176178
end
177179

server_create_debug.log

Lines changed: 174 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,174 @@
1+
✅ API認証情報を確認しました
2+
============================================================
3+
🚀 DojoPaaS 個別サーバー作成
4+
============================================================
5+
6+
サーバー名: coderdojo-japan
7+
8+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/archive
9+
List of Archives:
10+
- Name: Ubuntu Server 22.04.4 LTS 64bit
11+
- Name: Ubuntu Server 22.04.5 LTS 64bit
12+
- Name: Ubuntu Server 24.04.1 LTS 64bit
13+
- Name: Ubuntu Server 24.04.2 LTS 64bit
14+
- Name: Ubuntu Server 22.04.5 LTS 64bit (cloudimg)
15+
- Name: Ubuntu Server 24.04.1 LTS 64bit (cloudimg)
16+
- Name: Ubuntu Server 24.04.2 LTS 64bit (cloudimg)
17+
- Name: Debian GNU/Linux 11.11.0 64bit (cloudimg)
18+
- Name: Debian GNU/Linux 12.7.0 64bit (cloudimg)
19+
- Name: Debian GNU/Linux 11.11.0 64bit
20+
- Name: Debian GNU/Linux 12.7.0 64bit
21+
- Name: KUSANAGI Business Edition 9.5(AlmaLinux 9.4)
22+
- Name: KUSANAGI Premium Edition 9.5(AlmaLinux 9.4)
23+
- Name: KUSANAGI Business Edition 9.6(AlmaLinux 9.4)
24+
- Name: KUSANAGI Premium Edition 9.6(AlmaLinux 9.4)
25+
- Name: KUSANAGI Business Edition 9.6.8(AlmaLinux 9.5)
26+
- Name: KUSANAGI Premium Edition 9.6.8(AlmaLinux 9.5)
27+
- Name: KUSANAGI Security Edition 10.0.5(AlmaLinux 9.5)
28+
- Name: AlmaLinux 8.9 (cloudimg)
29+
- Name: AlmaLinux 8.10 (cloudimg)
30+
- Name: AlmaLinux 9.5 (cloudimg)
31+
- Name: AlmaLinux 9.6 (cloudimg)
32+
- Name: AlmaLinux 8.9 64bit
33+
- Name: AlmaLinux 8.10 64bit
34+
- Name: AlmaLinux 9.5 64bit
35+
- Name: AlmaLinux 9.6 64bit
36+
- Name: Miracle Linux 8.4 64bit
37+
- Name: Miracle Linux 9.0 64bit
38+
- Name: Miracle Linux 9.2 64bit
39+
- Name: Rocky Linux 8.9 (cloudimg)
40+
- Name: Rocky Linux 8.10 (cloudimg)
41+
- Name: Rocky Linux 9.5 (cloudimg)
42+
- Name: Rocky Linux 9.6 (cloudimg)
43+
- Name: Rocky Linux 8.9 64bit
44+
- Name: Rocky Linux 8.10 64bit
45+
- Name: Rocky Linux 9.5 64bit
46+
- Name: Rocky Linux 9.6 64bit
47+
- Name: Sophos Firewall v21.0.1
48+
- Name: Zabbix Enterprise Appliance ZS-V700.20241004.997
49+
- Name: Windows Server 2019 for ちょこっとデータ変換/加工 v1.1
50+
- Name: KUSANAGI 9.4 (CentOS Stream9 Edition)
51+
- Name: Netwiser VE Ver8.2.80
52+
- Name: Netwiser VE Ver8.2.80 Trial
53+
- Name: Netwiser VE Ver8.3.0
54+
- Name: Netwiser VE Ver8.3.0 Trial
55+
- Name: Netwiser VE Ver8.4.30
56+
- Name: Netwiser VE Ver8.4.30 Trial
57+
- Name: Netwiser VE Ver8.4.40
58+
- Name: Netwiser VE Ver8.4.40 Trial
59+
- Name: Netwiser VE Ver8.4.50
60+
- Name: Netwiser VE Ver8.4.50 Trial
61+
- Name: FortiGateVM v7.0.15
62+
- Name: FortiGateVM v7.2.8
63+
- Name: FortiGateVM v7.4.4
64+
- Name: FortiAnalyzerVM v7.2.5
65+
- Name: FortiAnalyzerVM v7.4.3
66+
- Name: FortiGateVM v7.2.9
67+
- Name: FortiGateVM v7.2.10
68+
- Name: FortiGateVM v7.4.5
69+
- Name: FortiAnalyzerVM v7.2.7
70+
- Name: FortiAnalyzerVM v7.2.8
71+
- Name: FortiAnalyzerVM v7.4.5
72+
- Name: FortiGateVM v7.0.16
73+
- Name: FortiGateVM v7.0.17
74+
- Name: FortiGateVM v7.4.6
75+
- Name: さくらのクラウド版 vRX 19.02.10
76+
- Name: AIWAF-VE for さくらのクラウド v5.0.2
77+
- Name: Windows Server 2019 Datacenter Edition
78+
- Name: Windows Server 2022 Datacenter Edition
79+
- Name: Windows Server 2025 Datacenter Edition
80+
- Name: CData Sync v25.1(Win Server 2025 DC)
81+
- Name: CData Sync v25.1(Win Server DC 2025 for RDS)
82+
- Name: CData Sync v25.1(Win Server DC 2025 for RDS&MS Office2024付)
83+
- Name: CData Sync v25.1(Ubuntu 24.04.2 LTS 64bit)
84+
- Name: Windows Server 2019 for RDS
85+
- Name: Windows Server 2022 for RDS
86+
- Name: Windows Server 2025 for RDS
87+
- Name: Windows Server 2019 for RDS(MS Office2024付)
88+
- Name: Windows Server 2022 for RDS(MS Office2024付)
89+
- Name: Windows Server 2025 for RDS(MS Office2024付)
90+
- Name: Windows Server 2019 for MS SQL 2017(Web)
91+
- Name: Windows Server 2019 for MS SQL 2019(Web)
92+
- Name: Windows Server 2022 for MS SQL 2022(Web)
93+
- Name: Windows Server 2019 for MS SQL 2017(Standard)
94+
- Name: Windows Server 2019 for MS SQL 2017(Std) with RDS / MS Office
95+
- Name: Windows Server 2019 for MS SQL 2019(Standard)
96+
- Name: Windows Server 2019 for MS SQL 2019(Std) with RDS / MS Office
97+
- Name: Windows Server 2022 for MS SQL 2022(Standard)
98+
- Name: Windows Server 2022 for MS SQL 2022(Std) with RDS / MS Office
99+
- Name: Windows Server 2019 for MS SQL 2017(Enterprise)
100+
- Name: Windows Server 2019 for MS SQL 2019(Enterprise)
101+
- Name: Windows Server 2022 for MS SQL 2022(Enterprise)
102+
Selected Archive: CData Sync v25.1(Ubuntu 24.04.2 LTS 64bit)
103+
Archive ID: 113702129604
104+
Get a list of existing servers.
105+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/server
106+
DEBUG: Request body: {Filter: {Tags: "dojopaas"}}
107+
DEBUG: Creating server with name: coderdojo-japan, description: CoderDojo Japan用のサーバーです。主にDojoPaaSの接続テストのために使われます。
108+
DEBUG: Tags: ["dojopaas", "japan"]
109+
DEBUG: Public key: ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAmMLlWAKh8nMRw1g...
110+
create_server_instance
111+
Create a server for coderdojo-japan.
112+
DEBUG: Server creation request: {Server: {ServerPlan: {CPU: 1, MemoryMB: 1024, Generation: 100}, Name: "coderdojo-japan", Description: "CoderDojo Japan用のサーバーです。主にDojoPaaSの接続テストのために使われます。", Tags: ["dojopaas", "japan"]}}
113+
DEBUG: POST https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/server
114+
DEBUG: Request body: {Server: {ServerPlan: {CPU: 1, MemoryMB: 1024, Generation: 100}, Name: "coderdojo-japan", Description: "CoderDojo Japan用のサーバーです。主にDojoPaaSの接続テストのために使われます。", Tags: ["dojopaas", "japan"]}}
115+
create_network_interface
116+
DEBUG: POST https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/interface
117+
DEBUG: Request body: {Interface: {Server: {ID: "113702240765"}}}
118+
connect_network_interface
119+
DEBUG: PUT https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/interface/113702240766/to/switch/shared
120+
apply_packet_filter
121+
DEBUG: PUT https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/interface/113702240766/to/packetfilter/112900922505
122+
create_a_disk
123+
DEBUG: POST https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk
124+
DEBUG: Request body: {Disk: {Plan: {ID: 4}, SizeMB: 20480, Name: "coderdojo-japan", Description: "CoderDojo Japan用のサーバーです。主にDojoPaaSの接続テストのために使われます。", SourceArchive: {ID: "113702129604"}}}
125+
migrating_disk
126+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
127+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
128+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
129+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
130+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
131+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
132+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
133+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
134+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
135+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
136+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
137+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
138+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
139+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
140+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
141+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
142+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
143+
disk_connection
144+
DEBUG: PUT https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767/to/server/113702240765
145+
setup_ssh_key
146+
147+
⏳ Waiting for disk (creation)...
148+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
149+
[ 0.2s] State: (initial) → available (check #1)
150+
✅ Disk ready! (0.2s, 1 API calls)
151+
DEBUG: Setting SSH key via disk/config API
152+
DEBUG: Notes being set: [{ID: 112900928939}]
153+
DEBUG: Full body for disk/config: {SSHKey: {PublicKey: "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAmMLlWAKh8nMRw1g23FsEvoYqYfuiA2xtoL4/9WRhLmYjKaVb+xyNcmwjX/3aSvN36PCxryMGVY1tgjysiUSo9s4E9swPyDeLb5DF3LTlSCpQRlBtymjyt8ZM46RboZyijfY+7FMxiruoW5W51qRxIOB+NUBHGs5pnxfnpCGlxU6rGqfeLL2N4QNtkKrYJ0ICFv8U/Yhvzdtx5ck1oyMorjP/HWnrxsjU9QHVrO4LYSCj9UfowyB6oa+io3C6KqiMxlqsx3GFVnUnycew6O/o8LmqMZ1HQRLKvLuQzWz8BmDueGBZSpaxz6+AhTNk85pnfkdNkoE/AtBRHqhQV+41bQ== [email protected]"}, Notes: [{ID: 112900928939}]}
154+
DEBUG: PUT https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767/config
155+
DEBUG: Request body: {SSHKey: {PublicKey: "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAmMLlWAKh8nMRw1g23FsEvoYqYfuiA2xtoL4/9WRhLmYjKaVb+xyNcmwjX/3aSvN36PCxryMGVY1tgjysiUSo9s4E9swPyDeLb5DF3LTlSCpQRlBtymjyt8ZM46RboZyijfY+7FMxiruoW5W51qRxIOB+NUBHGs5pnxfnpCGlxU6rGqfeLL2N4QNtkKrYJ0ICFv8U/Yhvzdtx5ck1oyMorjP/HWnrxsjU9QHVrO4LYSCj9UfowyB6oa+io3C6KqiMxlqsx3GFVnUnycew6O/o8LmqMZ1HQRLKvLuQzWz8BmDueGBZSpaxz6+AhTNk85pnfkdNkoE/AtBRHqhQV+41bQ== [email protected]"}, Notes: [{ID: 112900928939}]}
156+
DEBUG: disk/config API response: {"Success" => "Accepted", "is_ok" => true}
157+
158+
⏳ Waiting for disk (ssh-key-setup)...
159+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
160+
[ 0.2s] State: (initial) → migrating (check #1)
161+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
162+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
163+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
164+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
165+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
166+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/disk/113702240767
167+
[ 32.7s] State: migrating → available (check #7)
168+
✅ Disk ready! (32.7s, 7 API calls)
169+
DEBUG: Starting server (startup script already embedded in disk)
170+
DEBUG: PUT https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/server/113702240765/power
171+
server_shutdown
172+
DEBUG: GET https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/server/113702240765/power
173+
"up"
174+
"---------------------"

0 commit comments

Comments
 (0)