Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Acquia Cloud Platform入門:開発ワークフローを学ぼう
Search
アクイアジャパン Acquia Japan
January 26, 2022
Programming
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Acquia Cloud Platform入門:開発ワークフローを学ぼう
https://www.acquia.com/jp/events/webinars/basic-acquia-cloud-platform-development-workflow
アクイアジャパン Acquia Japan
January 26, 2022
More Decks by アクイアジャパン Acquia Japan
See All by アクイアジャパン Acquia Japan
Auth0 by OktaとDrupalで実践!認証付きアプリケーションの新しいアプローチ
acquiajp
0
240
Drupal 10.3の新機能紹介ウェビナー
acquiajp
0
280
DrupalCon Portland 2024 総まとめウェビナー
acquiajp
0
140
開発者必見!Acquia Cloud IDEで最高のDrupal開発を始めよう
acquiajp
0
240
触って学ぶ!デジタルアセット管理 Acquia DAM ハンズオンウェビナー
acquiajp
0
57
DrupalCon Lille 2023 総まとめウェビナー
acquiajp
0
120
コンテンツ設計手法で変更に強いアプリケーションを実現する〜ローコードによるWebアプリのバックエンド実装 #CNDF2023
acquiajp
0
410
DrupalCon Pittsburgh 2023 総まとめウェビナー
acquiajp
0
110
Acquia製品概要&Site Studioデモのご紹介
acquiajp
0
150
Other Decks in Programming
See All in Programming
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
160
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
140
Webの地図
yosuke_furukawa
PRO
6
4.1k
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
2
890
typoなんかねぇよ
raspython3
0
690
ソフトウェアラスタライザ
fadis
1
800
Intent as Code
shoppingjaws
6
870
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
650
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
330
業務時間外もAIに働いてもらう話
colorful12
3
10k
高専キャリア LT 発表内容
crysta1221
6
5.6k
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
150
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
WENDY [Excerpt]
tessaabrams
13
39k
Bash Introduction
62gerente
615
220k
YesSQL, Process and Tooling at Scale
rocio
174
15k
GraphQLとの向き合い方2022年版
quramy
50
15k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
820
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Transcript
Acquia Cloud Platformೖ ɹΞδΣϯμ • ओཁͳ։ൃπʔϧ • ίʔυϕʔεΛཧղ͢Δ • ґଘؔͷཧ
• Drupalͷίʔυن • Acquia Cloud PlatformͰ։ൃΛߦ͏ͨΊ ͷϕετϓϥΫςΟε • Q&A • ͓Βͤ ։ൃϫʔΫϑϩʔΛֶ΅͏
ʰͰͿͪΌΜͶΔʱͱʁ ΞΫΠΞδϟύϯ͕͓ಧ͚͢ΔʰͰͿͪΌΜͶΔʱͰ ɺΤϯδχΞͷΈͳ͞·͕ٳܜ͠ͳ͕Βฉ͚ΔΑ͏ ͳɺΧδϡΞϧͳܗࣜͰςΫχΧϧใΛൃ৴͢Δ։ ൃऀ͚ΣϏφʔͰ͢ɻִिਫ༵ίʔώʔยख ʹ͝ΏΔΓͱ͝ࢹௌ͍ͩ͘͞ɻ ϋογϡλά #AcquiaJP ͰײͳͲᄁ͍͍͚ͯͨͩΔ ͱخ͍͠Ͱ͢ʂ
ຊͷεϐʔΧʔ ΞΫΠΞδϟύϯ ؛ढ़ฌ ιϦϡʔγϣϯΤϯδχΞ ΞΫΠΞδϟύϯ ؙࢁͻ͔Δ ςΫχΧϧτϥϯεϨʔλʔ ͰͿͪΌΜͶΔ
ΞΫΠΞδϟύϯ ݄ ιϦϡʔγϣϯΤϯδχΞ
Acquia Cloud PlatformೖΣϏφʔγϦʔζ • Acquia Cloud PlatformɺDrupalΞϓϦέʔγϣϯΛߏஙɺ ཧ͢ΔͨΊͷεέʔϥϒϧͰ҆શͳϓϥοτϑΥʔϜͰ͢ɻ •
ຊΣϏφʔγϦʔζͰɺAcquia Cloud Platform͕ͲΜͳ ͷ͔ڵຯ͕͋Δํɺ͜Ε͔Β͍࢝ΊΔํ͚ʹɺAcquia Cloud PlatformͰߦ͏DrupalΞϓϦέʔγϣϯ։ൃߏஙํ๏ ศརͳπʔϧͳͲΛ͝հ͠·͢ɻ
աڈ์ૹ • Acquia Cloud Platformͱͳʹ͔ • DrupalΞϓϦέʔγϣϯ։ൃΛ࢝ΊΔ [ϩʔΧϧฤ] • DrupalΞϓϦέʔγϣϯ։ൃΛ࢝ΊΔ
[Cloud IDEฤ] • ΞϓϦέʔγϣϯཧํ๏Λֶ΅͏ • Ϣʔβʔཧํ๏Λֶ΅͏ Acquia Cloud PlatformೖΣϏφʔγϦʔζ
ओཁͳ։ൃπʔϧ
ओཁͳ։ൃπʔϧ • Drush • Git • Composer • Acquia CLI
• Acquia BLT • CI/CDπʔϧ
Drush • Drupal 4͔Βଘࡏ͢ΔCLIπʔϧ • ΩϟογϡΫϦΞɺߏઃఆͷΠϯϙʔτɺ৽͍͠Ϣʔβʔͷ࡞ɺϞδϡʔ ϧͷ༗ޮԽͳͲΛߦ͏ • Drush Drupal
Shell ͷུশ • ίϚϯυྫ • Ϟδϡʔϧͷ༗ޮԽ drush pm:enable admin_toolbar • ΩϟογϡΫϦΞ drush cache:rebuild
Git • όʔδϣϯཧγεςϜʢVCS: Version Control SystemʣͷҰͭ • Acquia Cloud PlatformͰΞϓϦέʔγϣϯ͝ͱʹɺίʔυϕʔε
Λཧ͢ΔͨΊͷGitϦϙδτϦ͕༻ҙ͞Ε͍ͯ·͢
Composer • PHPͷύοέʔδཧγεςϜ • ϓϩδΣΫτ͕ґଘ͢ΔϥΠϒϥϦΛએݴ͢Δ͜ͱͰɺͦΕΒͷϥΠϒϥϦΛ ཧʢΠϯετʔϧ/ߋ৽ʣ͠·͢ • DrupalͰDrupal 8Ҏ߱ͰComposerʹରԠ͍ͯ͠·͢ •
Composer 2ʹؔͯ͠Drupal 9.1Ͱਖ਼ࣜʹαϙʔτ
Acquia CLI • ΞΫΠΞ͕ఏڙ͢ΔCLIπʔϧͰɺAcquia Cloud Platformͷૢ࡞͕ߦ͑·͢ • ίϚϯυྫ • SSHΩʔͷ࡞ͱΞοϓϩʔυ
>> acli ssh-key:create-upload • SSHΞΫηε >> acli remote:ssh povjapan3.dev • DrushίϚϯυͷ࣮ߦ >> acli remote:drush povjapan3.dev cr • Acquia Cloud IDEͷ࡞ >> acli ide:create • LandoͷacquiaϨγϐͰAcquia CLIίϚϯυ͕༻Ͱ͖·͢ https://docs.acquia.com/acquia-cli/
• Build and Launch Tool ͷུশ • DrupalΞϓϦέʔγϣϯͷςετɺߏஙɺىಈ͢ΔͨΊͷࣗಈԽϨΠ ϠʔΛఏڙ͢ΔΦʔϓϯιʔεͷCLIπʔϧ •
ίϚϯυྫ • ΞΫΠΞڥΞʔςΟϑΝΫτΛσϓϩΠ blt artifact:deploy • ࣗಈςετͷ࣮ߦ blt tests Acquia BLT https://docs.acquia.com/blt/
• Acquia Pipelines • ΞΫΠΞͰఏڙ͢ΔCI/CDπʔϧ • Acquia Cloud CDͱηοτͰ༻͠·͢ •
GitͷίϛοτϓϧϦΫΤετΛτϦΨʔʹϏϧυɺςετɺσϓϩΠΛߦ͍·͢ • ॲཧதͷϩάςετ݁ՌAcquia CloudͷUI·ͨpipeline CLIπʔϧʹͯ֬ೝͰ͖ ·͢ • Acquia Cloud Platform CD • Acquia Cloud CDओʹ։ൃऀ͕ίʔυઃఆͷ֬ೝʹ༻͢ΔڥͰ͢ • ίϯςφٕज़Ͱຊ൪ڥʹྨࣅͨ͠ඇຊ൪ڥΛ࡞͠ɺPipeline͔ΒϏϧυ͞Εͨ ϒϥϯνͷ֬ೝʹ༻͞Ε·͢ • CDڥɺCDEsͱݺΕΔ͜ͱ͕͋Γ·͢ CI/CDπʔϧ
ίʔυϕʔεΛཧղ͢Δ
ϦϙδτϦͷσΟϨΫτϦߏ your Drupal project roo t ᵓ── bl t ᵓ──
confi g ᵓ── drus h ᵓ── docroo t ᵓ── hook s ᵓ── patche s ᵓ── test s └── vendor - Acquia BLTͷઃఆϑΝΠϧؚ͕·ΕΔ - DrupalͷߏϑΝΠϧ܈ؚ͕·ΕΔ - DrushͷαΠτΤΠϦΞεϑΝΠϧؚ͕·ΕΔ - DrupalͷυΩϡϝϯτϧʔτ - Cloud HooksͷεΫϦϓτϑΝΠϧؚ͕·ΕΔ - ϓϥΠϕʔτύονϑΝΠϧؚ͕·ΕΔ - ϓϩδΣΫτϨϕϧͷςετϑΝΠϧؚ͕·ΕΔ - Πϯετʔϧͨ͠ύοέʔδؚ͕·ΕΔ https://docs.acquia.com/blt/developer/repo-architecture/
docrootͷσΟϨΫτϦߏ your Drupal project roo t ᵓ── docroo t │
ᵓ── module s │ │ ᵓ── contri b │ │ └── custo m │ ᵓ── profile s │ ᵓ── site s │ │ ᵓ── defaul t │ │ └── mult i │ └── themes - Ϟδϡʔϧ܈ؚ͕·ΕΔ - ίϯτϦϏϡʔτϞδϡʔϧؚ͕·ΕΔ - ΧελϜϞδϡʔϧؚ͕·ΕΔ - αΠτͷϕʔεͱͳΔػೳߏؚ͕·ΕΔ - DrupalͷઃఆϑΝΠϧͳͲؚ͕·ΕΔ - ओͱͳΔDrupalαΠτͷઃఆϑΝΠϧؚ͕·ΕΔ - αϒαΠτͷઃఆϑΝΠϧؚ͕·ΕΔ - ςʔϚ܈ؚ͕·ΕΔ
Git • όʔδϣϯཧγεςϜʢVCS: Version Control SystemʣͷҰͭ • Acquia Cloud PlatformͰΞϓϦέʔγϣϯ͝ͱʹɺίʔυϕʔε
Λཧ͢ΔͨΊͷGitϦϙδτϦ͕༻ҙ͞Ε͍ͯ·͢
GitͰΔ͖͜ͱ • ίʔυͷશͯͷมߋΛ͠ɺ໌֬ͳཤྺΛ͢ • Կ͕มߋ͞Εͨͷ͔ • ୭͕มߋͨ͠ͷ͔ • ίʔυཧʹgitflowϝιουͱϓϧϦΫΤετɾϨϏϡʔͷΈΛ༻ ͢Δ
• λάΛ༻ͯ͠εςʔδϯάͱຊ൪ڥʹσϓϩΠ͢Δ
ྫ͑͜Μͳ࣌ • GitΛ༻ͯ͠શͯͷίʔυมߋΛσϓϩ Π͢Δ • ڊେͳϑΝΠϧΛGitϦϙδτϦʹίϛο τ͢Δ •
master։ൃϒϥϯνʹίϛοτ͢Δ • vendorσΟϨΫτϦϝΠϯϒϥϯν ʹϓογϡͤͣʹΞʔςΟϑΝΫτΛར༻ ͢Δ • େ༰ྔͷϝσΟΞϑΝΠϧDrupalͷύϒ ϦοΫϑΝΠϧσΟϨΫτϦΛ༻͢Δ • ϑΟʔνϟʔϒϥϯνϓϧϦΫΤετΛ ༻͠·͢
ϦϙδτϦߏͷݪଇ • ϓϩδΣΫτͷґଘؔΛϦϙδτϦʹίϛοτ͠ͳ͍Ͱͩ͘͞ ͍ɻ • ຊ൪ڥʹσϓϩΠ͞ΕΔίʔυશʹݕূ͞Εɺςετ͞Εɺαχ λΠζ͞Εɺ͔ͭඇຊ൪ڥͰͷΈ༻͢Δπʔϧؚ·Εͳ͍ঢ়ଶ͕ ·͍͠Ͱ͢ɻ • ڞ௨ͷϓϩδΣΫτλεΫڥʹؔͳ͘ɺશʹࣗಈԽ͞Εɺ࠶ݱ
ՄೳͰ͋Δ͖Ͱ͢ɻ
ϏϧυΞʔςΟϑΝΫτͱ ΞʔςΟϑΝΫτຊޠͰʮՌʯͱ༁͞Ε·͢ɻϏϧυΞʔςΟϑΝΫτͱɺϏϧ υʹΑͬͯੜ͞ΕͨϑΝΠϧΛࢦ͠·͢ɻ
2ͭͷGitϦϙδτϦ ΞΫΠΞͰఏڙ͢ΔGitϦϙδτϦ͋͘·Ͱʮϗε ςΟϯάʯͷͨΊʹ༻͞Ε·͢ɻ ϦϙδτϦʹϓογϡ͞ΕͨΞʔςΟϑΝΫτΛ༻ ͯ͠ΞΫΠΞڥʹσϓϩΠ͠·͢ɻ GithubBitbucketͳͲϗεςΟϯάϓϥοτϑΥʔϜͰ ɺϓϧϦΫissueΛ௨ͯ͡ίʔυϨϏϡʔ͕ߦ͑·͢ɻ ΞΫΠΞͷGitϦϙδτϦͱGithub/BitbucketͷϦϙδτϦΛ ಉظͰ͖·͢ɻ
None
ґଘؔͷཧ
Composer • PHPͷύοέʔδཧγεςϜ • ϓϩδΣΫτ͕ґଘ͢ΔϥΠϒϥϦΛએݴ͢Δ͜ͱͰɺͦΕΒͷϥΠϒϥϦΛ ཧʢΠϯετʔϧ/ߋ৽ʣ͠·͢ • DrupalͰDrupal 8Ҏ߱ͰComposerʹରԠ͍ͯ͠·͢ •
Composer 2ʹؔͯ͠Drupal 9.1Ͱਖ਼ࣜʹαϙʔτ
DrupalίΞͰ༻͞Ε͍ͯ·͢
Composer͕ͲͷΑ͏ʹػೳ͍ͯ͠Δͷ͔
composerͷૢ࡞৭ʑ • ґଘؔͷΠϯετʔϧ composer require drupal/[module] •
ґଘؔͷߋ৽ ʢίΞɺϓϩϑΝΠϧɺϞδϡʔϧɺςʔϚɺϥΠϒϥϦʣ composer update drupal/[module] --with-dependencies • ґଘؔͷআ composer remove drupal/[module] ίϚϯυ࣮ߦޙɺ composer.jsonͱcomposer.lock ͷϑΝΠϧมߋΛ Εͣʹίϛοτ͢Δ https://support-acquia.force.com/s/article/360048081273-Using- Composer-to-manage-dependencies-in-Drupal-8-and-9
ґଘؔΛཧ͢ΔͨΊʹ • શͯͷґଘؔcomposernpm/yarnΛ༻֤ͯ͠ݻ༗ͷґଘؔΛཧ͢Δඞཁ͕͋Γ·͢ • ίϯτϦϏϡʔτϞδϡʔϧɺςʔϚɺϓϩϑΟʔϧɾɾ • Ϟδϡʔϧ/ςʔϚ/ϓϩϑΟʔϧՄೳͰ͋ΕͳΔ҆͘ఆ൛Λ༻͠·͢ • ඇ҆ఆ൛DrupalͷηΩϡϦςΟΞυόΠβϦʔͷର֎Ͱ͢ •
શͯͷڥʹ͓͍ͯɺґଘؔͷཧʹಉ͡ϫʔΫϑϩʔઓུΛ༻͠·͢ • /vendorͷཧ͞Εͨґଘؔ։ൃϦϙδτϦʹίϛοτ͞ΕΔ͖Ͱ͋Γ·ͤΜ͕ɺΞΫΠΞڥʹσ ϓϩΠ͢ΔͨΊͷΞʔςΟϑΝΫτʹඞཁͰ͢ • composer.json ͱ composer.lock ྆ํͷϑΝΠϧΛϦϙδτϦʹίϛοτ͢Δඞཁ͕͋Γ·͢ • ։ൃऀܾͯ͠खಈͰlockϑΝΠϧΛฤू͢Δ͖Ͱ͋Γ·ͤΜ • ։ൃऀ composer.json ϑΝΠϧΛߋ৽ͯ͠ɺcomposerΛ༻ͯ͠lockϑΝΠϧΛߋ৽͠·͢
Drupalͷίʔυن
Drupalͷίʔυن ίʔυنͱ • ίʔυͷॻ͖ํܗࣜͳͲɺ͞·͟·ͳܾ·ΓࣄΛఏࣔ͢ΔϓϩάϥϚ͚ͷҰ࿈ͷϧʔϧ • มؔͳͲͷ໋໊نଇɺېࢭࣄ߲ɺΠϯσϯτɺεϖʔεɺׅހԋࢉࢠͳͲͷه߸ͷஔͷํͳ ͲΛఆٛ • ίʔυͷදه๏ΛίʔσΟϯάنͱͯ͠౷Ұ͓ͯ͘͠ͱɺՄಡੑอकੑ͕ߴ·Γɺ։ൃޮ্͕ •
ओͳݺͼํɿCode StandardsɺCoding StandardsɺίʔσΟϯάنɺίʔσΟϯάϧʔϧɾɾ Drupalʹ͓͚Δίʔυن • PEARίʔυن͕ϕʔεͱͳ͍ͬͯ·͢ • DrupalͷίʔυنίΞόʔδϣϯؔͳ͘ɺৗʹ࠷৽ͷίʔυنʹै͏ඞཁ͕͋Γ·͢ https://www.drupal.org/docs/develop/standards
DrupalίʔυنͷҰྫ • Πϯσϯτͱۭന • λϒͳ͠Ͱɺ2ͭͷεϖʔεͷΠϯσϯτΛ༻ • ߦͷ࠷ޙʹۭനΛೖΕͳ͍ • ߦͷ͞
• 80จࣈ͕҆ • ԋࢉࢠ • ԋࢉࢠʢ=, -, +, *, =>, . ͳͲʣৗʹ1ͭͷεϖʔεΛ͚ͭΔ • …etc https://www.drupal.org/docs/develop/standards/coding-standards
ίʔυنΛνΣοΫ͢ΔͨΊͷπʔϧ • ͕ࣗॻ͍ͨίʔυɺಉ྅͕ॻ͍ͨίʔυ͕ίʔυنʹԊ͍ͬͯΔ͔ΛࢹͰ νΣοΫ͢Δͷ͍͠Ͱ͢ • ͦ͜ͰɺίʔσΟϯάنΛࣗಈతʹνΣοΫ͢ΔπʔϧΛಋೖ͢Δͷ͕ҰൠతͰ͢ • IDE/ΤσΟλπʔϧʹΈࠐΉ •
ྫʣPHPStormͷηοτΞοϓํ๏ • ιʔείʔυղੳπʔϧ • Coder • PHP_CodeSniffer • Acquia BLTͰίʔυΛίϛοτ͢Δલʹݕ͢Δ
Acquia Cloud PlatformͰ։ൃΛߦ͏ͨΊͷ ϕετϓϥΫςΟε
ΞΫΠΞ͕ਪ͢ΔϕετϓϥΫςΟε • Drupalίʔυنʹै͏ • DrupalίΞϑΝΠϧΛมߋ͠ͳ͍ • σʔλϕʔεΫΤϦͷύϑΥʔϚϯεΛߟྀ͢Δ • ϑΝΠϧγεςϜͷແବͳΞΫηεΛආ͚Δ •
ΩϟογϡΛదʹ༻͢Δ • ϝϞϦϑοτϓϦϯτՄೳͳݶΓখ͘͢͞Δ • …etc https://docs.acquia.com/cloud-platform/onboarding/developing/
ඪ४తͳ։ൃϫʔΫϑϩʔ Acquia Pipelines Acquia Cloud IDE
Acquia Cloud Platformೖ ɹΞδΣϯμ • ओཁͳ։ൃπʔϧ • ίʔυϕʔεΛཧղ͢Δ • ґଘؔͷཧ
• Drupalͷίʔυن • Acquia Cloud PlatformͰ։ൃΛߦ͏ͨΊ ͷϕετϓϥΫςΟε • Q&A • ͓Βͤ ։ൃϫʔΫϑϩʔΛֶ΅͏
͓ΒͤɾʮDrupalCamp DEN 2022 Osakaʯ1݄29()։࠵ʂ ։࠵֓ཁ ࣌ɿ20221݄29() 13:00 - 17:30 ࢀՃඅɿແྉ
৴ܗࣜɿΦϯϥΠϯ৴ (Youtube) ͓ਃ͠ࠐΈͪ͜Βʂ https://drupal-meetup-den.connpass.com/event/229256/
None