commit
5b0fbae000
@ -1 +0,0 @@ |
|||||||
|
|
@ -1,231 +0,0 @@ |
|||||||
# Javascript Node CircleCI 2.0 configuration file |
|
||||||
# |
|
||||||
# Check https://circleci.com/docs/2.0/language-javascript/ for more details |
|
||||||
# |
|
||||||
version: 2 |
|
||||||
jobs: |
|
||||||
remix-ide-chrome: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.18.0-browsers |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
resource_class: xlarge |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json" |
|
||||||
working_directory: ~/remix-project |
|
||||||
|
|
||||||
parallelism: 20 |
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- run: npm install |
|
||||||
- run: npm run lint |
|
||||||
- run: |
|
||||||
name: Download Compatible JAVA Version for Selenium |
|
||||||
command: | |
|
||||||
java -version |
|
||||||
sudo apt-get purge --auto-remove java-common |
|
||||||
sudo apt-get update |
|
||||||
sudo apt-get install openjdk-8-jdk |
|
||||||
java -version |
|
||||||
- run: |
|
||||||
name: Download Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
- run: |
|
||||||
name: Start Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
background: true |
|
||||||
- run: ./apps/remix-ide/ci/browser_tests_chrome.sh |
|
||||||
- store_test_results: |
|
||||||
path: ./apps/remix-ide/reports/tests |
|
||||||
- store_artifacts: |
|
||||||
path: ./apps/remix-ide/reports/screenshots |
|
||||||
|
|
||||||
remix-ide-firefox: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.18.0-browsers |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
resource_class: xlarge |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json" |
|
||||||
working_directory: ~/remix-project |
|
||||||
|
|
||||||
parallelism: 20 |
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- run: npm install |
|
||||||
- run: npm run lint |
|
||||||
- run: |
|
||||||
name: Download Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
- run: |
|
||||||
name: Start Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
background: true |
|
||||||
- run: |
|
||||||
name: Download Latest Firefox |
|
||||||
command: sudo apt-get purge -y firefox && wget https://sourceforge.net/projects/ubuntuzilla/files/mozilla/apt/pool/main/f/firefox-mozilla-build/firefox-mozilla-build_73.0.1-0ubuntu1_amd64.deb |
|
||||||
- run: |
|
||||||
name: Install Firefox |
|
||||||
command: sudo dpkg -i firefox-mozilla-build_73.0.1-0ubuntu1_amd64.deb |
|
||||||
- run: ./apps/remix-ide/ci/browser_tests_firefox.sh |
|
||||||
- store_test_results: |
|
||||||
path: ./apps/remix-ide/reports/tests |
|
||||||
- store_artifacts: |
|
||||||
path: ./apps/remix-ide/reports/screenshots |
|
||||||
|
|
||||||
remix-ide-run-deploy: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.18.0-browsers |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
resource_class: xlarge |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json" |
|
||||||
working_directory: ~/remix-project |
|
||||||
|
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- run: npm install |
|
||||||
- run: npm run lint |
|
||||||
- run: |
|
||||||
name: Download Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone install --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
- run: |
|
||||||
name: Start Selenium |
|
||||||
command: ./node_modules/.bin/selenium-standalone start --config=../remix-project/apps/remix-ide/seleniumConfig.js |
|
||||||
background: true |
|
||||||
- run: ./apps/remix-ide/ci/browser_tests_run_deploy.sh |
|
||||||
- store_artifacts: |
|
||||||
path: ./apps/remix-ide/reports/screenshots |
|
||||||
|
|
||||||
|
|
||||||
deploy-remix-live: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.18.0-browsers |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
resource_class: xlarge |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json" |
|
||||||
working_directory: ~/remix-project |
|
||||||
|
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- run: npm install |
|
||||||
- run: npm run lint |
|
||||||
- run: |
|
||||||
name: Deploy |
|
||||||
command: | |
|
||||||
if [ "${CIRCLE_BRANCH}" == "remix_live" ]; then |
|
||||||
./apps/remix-ide/ci/deploy_from_travis_remix-live.sh; |
|
||||||
fi |
|
||||||
- store_artifacts: |
|
||||||
path: ./apps/remix-ide/reports/screenshots |
|
||||||
|
|
||||||
publish-docker: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.19.0-buster |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
resource_class: xlarge |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "assets background.js build icon.png index.html manifest.json README.md soljson.js package.json" |
|
||||||
working_directory: ~/remix-ide |
|
||||||
|
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- setup_remote_docker |
|
||||||
- run: npm install |
|
||||||
- run: npm run build |
|
||||||
- run: ./ci/build_and_publish_docker_images.sh |
|
||||||
|
|
||||||
deploy-remix-alpha: |
|
||||||
docker: |
|
||||||
# specify the version you desire here |
|
||||||
- image: circleci/node:10.18.0-browsers |
|
||||||
|
|
||||||
# Specify service dependencies here if necessary |
|
||||||
# CircleCI maintains a library of pre-built images |
|
||||||
resource_class: xlarge |
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/ |
|
||||||
# - image: circleci/mongo:3.4.4 |
|
||||||
environment: |
|
||||||
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org" |
|
||||||
- COMMIT_AUTHOR: "Circle CI" |
|
||||||
- FILES_TO_PACKAGE: "apps/remix-ide/assets apps/remix-ide/background.js apps/remix-ide/build apps/remix-ide/icon.png apps/remix-ide/index.html apps/remix-ide/manifest.json apps/remix-ide/README.md apps/remix-ide/soljson.js apps/remix-ide/package.json" |
|
||||||
working_directory: ~/remix-project |
|
||||||
|
|
||||||
steps: |
|
||||||
- checkout |
|
||||||
- run: npm install |
|
||||||
- run: npm run lint |
|
||||||
- run: |
|
||||||
name: Deploy |
|
||||||
command: | |
|
||||||
if [ "${CIRCLE_BRANCH}" == "master" ]; then |
|
||||||
./apps/remix-ide/ci/deploy_from_travis_remix-alpha.sh; |
|
||||||
fi |
|
||||||
- store_artifacts: |
|
||||||
path: ./apps/remix-ide/reports/screenshots |
|
||||||
|
|
||||||
workflows: |
|
||||||
version: 2 |
|
||||||
build_all: |
|
||||||
jobs: |
|
||||||
- remix-ide-chrome |
|
||||||
- remix-ide-firefox |
|
||||||
- remix-ide-run-deploy |
|
||||||
- publish-docker: |
|
||||||
requires: |
|
||||||
- remix-ide-chrome |
|
||||||
- remix-ide-firefox |
|
||||||
- remix-ide-run-deploy |
|
||||||
- deploy-remix-live: |
|
||||||
requires: |
|
||||||
- remix-ide-chrome |
|
||||||
- remix-ide-firefox |
|
||||||
- remix-ide-run-deploy |
|
||||||
- publish-docker |
|
||||||
filters: |
|
||||||
branches: |
|
||||||
only: remix_live |
|
||||||
- deploy-remix-alpha: |
|
||||||
requires: |
|
||||||
- remix-ide-chrome |
|
||||||
- remix-ide-firefox |
|
||||||
- remix-ide-run-deploy |
|
||||||
- publish-docker |
|
||||||
filters: |
|
||||||
branches: |
|
||||||
only: master |
|
@ -0,0 +1,19 @@ |
|||||||
|
#!/usr/bin/env node |
||||||
|
|
||||||
|
const ipfsClient = require('ipfs-http-client') |
||||||
|
console.log('current folder', process.cwd()) |
||||||
|
const folder = process.cwd() + '/temp_publish_docker'; |
||||||
|
|
||||||
|
(async () => { |
||||||
|
const host = 'ipfs.komputing.org' // ethdev berlin ipfs node |
||||||
|
const ipfs = ipfsClient({ host, port: 443, protocol: 'https' }) |
||||||
|
try { |
||||||
|
let result = await ipfs.addFromFs(folder, { recursive: true, pin: false }) |
||||||
|
const remoteFolder = result[result.length - 1] |
||||||
|
console.log('ipfs://' + remoteFolder.hash) |
||||||
|
console.log('https://ipfsgw.komputing.org/ipfs/' + remoteFolder.hash) |
||||||
|
console.log('https://gateway.ipfs.io/ipfs/' + remoteFolder.hash) |
||||||
|
} catch (e) { |
||||||
|
console.log(e) |
||||||
|
} |
||||||
|
})() |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 15 KiB |
@ -1,23 +1,10 @@ |
|||||||
{ |
{ |
||||||
"lerna": "2.10.2", |
"packages": ["dist/libs/**/*"], |
||||||
"packages": [ |
"version": "independent", |
||||||
"remix-debug", |
|
||||||
"remix-lib", |
|
||||||
"remix-solidity", |
|
||||||
"remix-analyzer", |
|
||||||
"remix-tests", |
|
||||||
"remix-simulator", |
|
||||||
"remix-url-resolver", |
|
||||||
"remix-astwalker" |
|
||||||
], |
|
||||||
"command": { |
"command": { |
||||||
"init": { |
|
||||||
"exact": true |
|
||||||
}, |
|
||||||
"publish": { |
"publish": { |
||||||
"exact": true, |
"ignoreChanges": ["ignored-file", "*.md"], |
||||||
"skipGit": true |
"message": "remix-libs(release): publish version" |
||||||
} |
} |
||||||
}, |
} |
||||||
"version": "independent" |
} |
||||||
} |
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,26 +1,60 @@ |
|||||||
# Release process |
# Release process |
||||||
This document details steps for publishing packages and tag the code base accordingly: |
|
||||||
|
This document includes: |
||||||
|
- how to publish remix libs to NPM |
||||||
1) Publish (using lerna) all the modules that depends on one of the newly published module |
- how to update remix.ethereum.org |
||||||
|
- how to update remix-alpha.ethereum.org |
||||||
- checkout a new branch from master |
- how to release remix IDE |
||||||
- npm run publish (that command use lerna) |
|
||||||
- commit |
## Remix libs release |
||||||
|
- git fetch origin master |
||||||
2) Increment the root (repository scoped) package.json |
- git checkout origin/master |
||||||
|
- git checkout -b bumpLibsVersion |
||||||
- increment root package.json version |
- npm run publish:libs (this command uses lerna) |
||||||
- commit |
- commit |
||||||
- merge the branch |
|
||||||
|
## Remix IDE release |
||||||
3) Create a tag (using the package.json version) |
|
||||||
|
- git fetch origin master |
||||||
- checkout latest origin/master |
- git checkout origin/master |
||||||
- npm run tag |
- git checkout -b bumpVersion |
||||||
- previousVersion=[previous_version] npm run updateChangelog |
- update package.json version |
||||||
- create a new release out of the changes of CHANGELOG.md |
- remove package-lock.json version and generate a new one with `npm install` |
||||||
|
- merge PR |
||||||
4) Commit new updated CHANGELOG.md |
- git fetch origin master |
||||||
|
- git checkout origin/master |
||||||
|
- git tag v(version-number) |
||||||
|
- git push --tags |
||||||
|
- github-changes -o ethereum -r remix-ide -a --only-pulls --use-commit-body --only-merges --between-tags previous_version...next_version |
||||||
|
- publish a release in github using the changelog |
||||||
|
- after remix_live is updated, drop the zip (from https://github.com/ethereum/remix-live/) to the release. |
||||||
|
|
||||||
|
## Remix-ide beta release |
||||||
|
- git fetch origin master |
||||||
|
- git checkout origin/master |
||||||
|
- git checkout -b bumpVersion |
||||||
|
- update package.json version to the new version "vx.x.x-beta.1" |
||||||
|
- remove package-lock/json version and generate a new one with `npm install` |
||||||
|
- merge PR |
||||||
|
- git fetch origin master |
||||||
|
- git checkout origin/master |
||||||
|
- git tag v(version-number) (with "vx.x.x-beta.1") |
||||||
|
- git push --tags |
||||||
|
- github-changes -o ethereum -r remix-ide -a --only-pulls --use-commit-body --only-merges --between-tags previous_version...next_version |
||||||
|
- publish a beta release in github using the changelog |
||||||
|
- drop zip file to the beta release (from https://github.com/ethereum/remix-live-alpha) |
||||||
|
|
||||||
|
## remix.ethereum.org update |
||||||
|
|
||||||
|
This is not strictly speaking a release. Updating the remix site is done through the Travis build: |
||||||
|
|
||||||
|
- git co -b remix_live origin/remix_live |
||||||
|
- git reset --hard -master-commit-hash- |
||||||
|
- git push -f origin remix_live |
||||||
|
|
||||||
|
CircleCI will build automaticaly and remix.ethereum.org will be updated |
||||||
|
|
||||||
|
## remix-alpha.ethereum.org update |
||||||
|
|
||||||
|
remix-alpha.ethereum.org is automaticaly updated every time commits are pushed to master |
||||||
|
|
||||||
|
Loading…
Reference in new issue