Updating developer instructions [ci skip] (#11728)

This commit is contained in:
Dan Graham
2018-12-11 09:03:50 -08:00
committed by GitHub
parent 88eded2b25
commit a2ff1b5afd
2 changed files with 19 additions and 13 deletions
@@ -139,6 +139,21 @@ _FORCE_LOGS=1 <command> # show module log output during test run
Note that we have a convention for unit test files to end in `-specs.js` and
for e2e test files to end in `-e2e-specs.js`.
### Updating Appium site docs
The [Appium site](https://appium.io) is built using a site generator that translates the markdown in https://github.com/appium/appium to static HTML
To update the site docs, follow these steps:
1. From Appium repo, run `npm run generate-docs` and make a pull request if there are any newly generated docs.
1. When the above PR is merged, clone the [appium.io](https://github.com/appium/appium.io) repo (if you haven't done so already)
1. Check out and pull the latest `gh-pages` branch
1. Follow the setup guide in the README.md
1. Generate the docs by running `npm run build:docs`
1. Make a new branch
1. Commit and push changes and make a pull request to have changes merged into `gh-pages`
### Releasing
The release process for any Appium module other than the main Appium package is
@@ -180,21 +195,12 @@ converted into the `npm-shrinkwrap.json` file.
1. Determine whether we have a `patch` (bugfix), `minor` (feature), or `major` (breaking) release according to the principles of SemVer.
1. Update `package.json` with the appropriate new version.
1. Update the CHANGELOG/README with appropriate changes and submit for review as a PR, along with shrinkwrap and `package.json` changes. Wait for it to be merged, then pull it into the release branch.
1. Run `npm run prod-shrinkwrap` to install just the production dependencies and create a shrinkwrap that only locks production dependencies.
1. Run `npm run shrinkwrap-prod`. This script prunes dev dependencies (leaving only production dependencies), creates a production-only `npm-shrinkwrap.json` and then re-installs the dev dependencies by doing `npm install --no-shrinkwrap`.
1. Create a tag of the form `v<version>` on the release branch (usually a minor branch like `1.5` or `1.4`), with: `git tag -a v<version>`, e.g., `git tag -a v1.5.0`. This is not necessary for beta versions.
1. Push the tag to upstream: `git push --tags <remote> <branch>`
1. Install dev dependencies (or at least `gulp` and `appium-gulp-plugins`), and undo the changes to the NPM shrinkwrap JSON file (e.g., `git checkout -- npm-shrinkwrap.json`).
1. Run `npm publish` (with `--tag beta` if this isn't an official release).
1. Remove the NPM shrinkwrap JSON file from Git and push the changes
1. Update the site docs or put in an [issue](https://github.com/appium/appium/issues) to have the site docs updated
* From Appium repo, run `npm run generate-docs` and make a pull request if there are any newly generated docs.
* When the above PR is merged, clone the [appium.io](https://github.com/appium/appium.io) repo (if you haven't done so already)
* Check out and pull the latest `gh-pages` branch
* Follow the setup guide in the README.md
* Generate the docs by running `npm run build:docs`
* Test by running `npm run serve` and navigating to https://localhost:4000/
* Make a new branch
* Commit and push changes and make a pull request to have changes merged into `gh-pages`
1. Update the site docs (see "Updating Appium site docs" above) or put in an [issue](https://github.com/appium/appium/issues) to have the site docs updated
1. Create a new release on GitHub: go to `https://github.com/appium/appium/releases/tag/v<VERSION>` and hit "Edit Tag". Make the release name `<VERSION>` (e.g., `2.0.5`), then paste in the changelog (but not the changelog header for this version). If it's a beta release, mark as pre-release.
1. Create a new post on discuss.appium.io announcing the release. Post it in the "News" category. Paste in the changelog and any choice comments. Pin it and unpin the previous release post.
1. Begin process of releasing `appium-desktop`.
+2 -2
View File
@@ -83,8 +83,7 @@
"lint": "gulp eslint",
"coverage": "gulp coveralls",
"generate-docs": "node ./build/commands-yml/parse.js",
"clean": "rm -rf node_modules && rm -rf package-lock.json && npm install",
"shrinkwrap-prod": "rm -rf package-lock.json && npm prune --production && npm shrinkwrap",
"shrinkwrap-prod": "rimraf package-lock.json && npm prune --production && npm shrinkwrap && npm install --no-shrinkwrap",
"zip": "zip -qr appium.zip .",
"upload": "node ./build/test/scripts/bintray-upload.js",
"zip-and-upload": "npm run zip && npm run upload"
@@ -110,6 +109,7 @@
"mocha": "5.x",
"pre-commit": "1.x",
"replace-ext": "^1.0.0",
"rimraf": "^2.6.2",
"sinon": "^6.0.0",
"validate.js": "^0.12.0",
"wd": "^1.10.0",