Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Electron アプリのビルド + 配信自動化
Search
ngs
February 10, 2016
Programming
0
2.9k
Electron アプリのビルド + 配信自動化
#meguroes 2 にて発表させていただいたスライドです。
ngs
February 10, 2016
Tweet
Share
More Decks by ngs
See All by ngs
Mindstorms NXT Playground Book for iPad
ngs
0
1.8k
Hubot を使って日々のルーチンワークをゼロにする
ngs
3
1.6k
IBM Cloud Tools for Swift
ngs
0
480
WWDC 2016
ngs
2
1.4k
CI2Go
ngs
0
890
Oneteam の開発チームが行っている協同のための工夫 v2016-04-13
ngs
0
2.4k
Swift で開発した Web アプリケーションを Amazon EC2 Container Services で運用する
ngs
3
4.3k
Oneteam の 少人数で複数プロダクトを 開発する技術的な試行錯誤 #eventdots
ngs
2
2.7k
Kaizen Platform での Hubot 活用事例
ngs
7
5.4k
Other Decks in Programming
See All in Programming
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.9k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
50
33k
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
550
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
180
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
1
14k
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
780
WindowInsetsだってテストしたい
ryunen344
1
240
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
2.2k
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
1
8.3k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
150
RailsGirls IZUMO スポンサーLT
16bitidol
0
170
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
110
Featured
See All Featured
Code Review Best Practice
trishagee
69
18k
For a Future-Friendly Web
brad_frost
179
9.8k
Code Reviewing Like a Champion
maltzj
524
40k
Building an army of robots
kneath
306
45k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
How to train your dragon (web standard)
notwaldorf
94
6.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Statistics for Hackers
jakevdp
799
220k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Building Applications with DynamoDB
mza
95
6.5k
We Have a Design System, Now What?
morganepeng
53
7.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Transcript
Electron ΞϓϦͷ Ϗϧυ + ৴ࣗಈԽ Atsushi Nagase @ngs / http://ja.ngs.io/
https://one-team.com/products/
νʔϜͷڠಉΛαϙʔτ͢ΔαʔϏεΛఏڙ͍ͯ͠·͢ɻ
None
τϐοΫΛ࡞ͯ͠ɺ
ϦΞϧλΠϜʹٞΛੵΈॏͶͯ ࣄΛਐΊ͍ͯ͘ιϑτΣΞͰ͢
Tech Stack Frontend Deploy Backend API Distribute
None
Deploy • docker build -t $TARGET docker • docker push
"${DOCKER_REPO}:${TAG_WEB}-staging-b${CIRCLE_BUILD_NUM}" • npm run asset:sync (to AWS S3) • aws ecs update-service --cluster ${CLUSTER} —service ... • webpack --config config/webpack.config.babel.js • jade src/templates/index.jade --out build ⛏ Build Distribute • electron-packager ./app Oneteam --out build --platform=darwin ... • electron-builder $BUILT --platform=osx --out=$DIR ... • codesign --deep --force --verify --verbose --sign "$identity" "$app" ... • productbuild --component "$APP_PATH" /Applications ... • slack-notify
Deploy • docker build -t $TARGET docker • docker push
"${DOCKER_REPO}:${TAG_WEB}-staging-b${CIRCLE_BUILD_NUM}" • npm run asset:sync (to AWS S3) • aws ecs update-service --cluster ${CLUSTER} —service ... • webpack --config config/webpack.config.babel.js • jade src/templates/index.jade --out build ⛏ Build Distribute • electron-packager ./app Oneteam --out build --platform=darwin ... • electron-builder $BUILT --platform=osx --out=$DIR ... • codesign --deep --force --verify --verbose --sign "$identity" "$app" ... • productbuild --component "$APP_PATH" /Applications ... • slack-notify Darwin!!!1! git add -A build && cd build git push --force $YET_ANOTHER_GIT_REPO $CIRCLE_BRANCH
Setup ূ໌ॻͷಡΈࠐΈ
Setup Homebrew ͰඞཁͳιϑτΣΞͷΠϯετʔϧ
Setup Homebrew ͰඞཁͳιϑτΣΞͷΠϯετʔϧ
Setup Homebrew ͰඞཁͳιϑτΣΞͷΠϯετʔϧ cd /usr/local tar cvfz $CIRCLE_ARTIFACTS/HomebrewCellar.tgz Cellar
#
electron-packager ./app Oneteam \ --out build \ --platform=darwin --arch=x64 \
--version=$ELECTRON_VERSION \ --build-version=$BUILD_NUM \ --app-bundle-id=$BUNDLE_ID_PREFIX.Oneteam \ --app-version=$VERSION \ --asar \ --helper-bundle-id=$BUNDLE_ID_PREFIX.OneteamHelper \ --icon=assets/osx/app.icns \ --overwrite \ --sign 'Developer ID Application: Oneteam Inc. (579B4336F6)' https://github.com/maxogden/electron-packager
electron-builder build/Oneteam-darwin-x64/Oneteam.app \ --platform=osx --out=$DIR --config=packager.json electron-builder build/Oneteam-win32-ia32 \ --platform=win
--out=$DIR --config=packager.json https://github.com/loopline-systems/electron-builder
aws s3 sync dist \ "s3://$S3BUCKET/desktop/${VERSION}/b${BUILD_NUM}" \ --acl public-read curl
-X POST --data-urlencode "payload={ ... }" \ $SLACK_WEBHOOK_URL
TODO
Windows ༻ͷূ໌ॻͷΠϯετʔϧ TODO
TODO Auto Updater ͷઃఆ http://electron.atom.io/docs/v0.36.7/api/auto-updater/
https://one-team.com/ja/recruit/ We're HIRING
ଟँ