일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- signIn
- Route53
- react
- TypeScript
- xlsx
- 프로그래머스
- API Gateway
- AWS
- react-admin
- dynamodb
- react DOM
- jimp
- react-sortable-hoc
- window.postMessage
- gitignore
- yml
- react-xml-parser
- axios
- icrawler
- electron-builder
- JavaScript
- cognito
- node
- 가상 DOM
- zerocho
- timeinput
- react-hook-form
- readableStream
- electron
- domtoimage
Archives
- Today
- Total
꾸준히 공부하는 개발자
[Electron.js] electron-builder 를 이용한 local, dev, prod 버젼 관리부터 s3 배포까지 본문
Electron.js
[Electron.js] electron-builder 를 이용한 local, dev, prod 버젼 관리부터 s3 배포까지
kauboy 2020. 6. 16. 19:00electron으로 dev서버와 prod 서버를 동시에 관리해야 할 일이 생겼다.
electron-builder-dev.yml
productName: "example"
appId: "example-dev"
# Package electron code into a asar archive. Set to false to debug issues.
asar: true
protocols:
- name: "Example-DEV"
schemes:
- ms-batchlabs
- ms-batch-explorer
# Mac OS configuration
mac:
icon: "./public/assets/icons/icon.png"
# Config for OSX dmg
dmg:
title: "Example"
# Windows configuration
win:
icon: "./public/assets/icons/icon.png"
target:
- "zip"
- "nsis"
# Config for the windows installer
nsis:
oneClick: false
allowToChangeInstallationDirectory: true
# Linux configuration
linux:
category: Development
target:
- "AppImage"
- "deb"
- "rpm"
directories:
buildResources: "resources"
output: "dist/"
app: "."
publish:
provider: "s3"
bucket: "your-s3-bucket-name"
acl: "public-read"
publish를 설정해둠으로써 bucket에 바로 업로드가 된다.
또한 iam을 aws/credential 의 default로 설정해두니 접근허용이 되어 자동으로 올라갈 수 있게 되었다.
package.json (일부분)
"scripts": {
"react-start": "cp ./.env.test ./.env && react-scripts start",
"start": "concurrently \"cross-env BROWSER=none npm run react-start\" \"wait-on http://localhost:3000 && electron .\"",
"build": "cp ./.env.dev ./.env && react-scripts build",
"build:production": "cp ./.env.prod ./.env && react-scripts build",
"electron:dev": "npm run build && electron-builder --config ./electron-builder-dev.yml",
"electron:prod": "npm run build:production && electron-builder --config ./electron-builder-prod.yml",
"publish:dev": "npm run build && electron-builder --config ./electron-builder-dev.yml --win --publish always",
"publish:prod": "npm run build:production && electron-builder --config ./electron-builder-prod.yml --publish always",
"deploy": "bash scripts/deploy-dev.sh",
"deploy:production": "bash scripts/deploy-prod.sh",
"cypress": "cypress open"
},
위의 scripts의 electron-builder --config ./electron-builder-dev.yml 을 이용하여 build를 따로 설정해 줄 수 있다.
이로써 electron-builder의 build 부분을 dev와 prod로 따로 관리할 수 있게 되었다.
참고: https://www.electron.build/configuration/configuration#environment-variables-from-file
'Electron.js' 카테고리의 다른 글
[Electron.js] electron.js 빌드부터 실행까지 (electron-builder) (0) | 2020.04.03 |
---|
Comments