You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2020/10/02 20:42:53 UTC

[GitHub] [airflow] potiuk commented on a change in pull request #11245: Move releasing-airflow docs to dev/README.md

potiuk commented on a change in pull request #11245:
URL: https://github.com/apache/airflow/pull/11245#discussion_r499041293



##########
File path: dev/README.md
##########
@@ -243,3 +251,331 @@ Here is a typical scenario:
 
 Once you install and run Airflow, you should perform any verification you see as necessary to check
 that the Airflow works as you expected.
+
+
+# Building an RC
+
+The Release Candidate artifacts we vote upon should be the exact ones we vote against, without any modification than renaming – i.e. the contents of the files must be the same between voted release canidate and final release. Because of this the version in the built artifacts that will become the official Apache releases must not include the rcN suffix.
+
+- Set environment variables 
+```
+# Set Version
+export VERSION=1.10.2rc3
+
+
+# Set AIRFLOW_REPO_ROOT to the path of your git repo
+export AIRFLOW_REPO_ROOT=$(pwd)
+
+
+# Example after cloning
+git clone https://github.com/apache/airflow.git airflow
+cd airflow
+export AIRFLOW_REPO_ROOT=$(pwd)
+```
+
+- set your version to 1.10.2 in airflow/version.py (without the RC tag)
+- Commit the version change.
+
+- Tag your release
+
+`git tag ${VERSION}`
+
+- Clean the checkout: the sdist step below will
+`git clean -fxd`
+
+- Tarball the repo
+`git archive --format=tar.gz ${VERSION} --prefix=apache-airflow-${VERSION}/ -o apache-airflow-${VERSION}-source.tar.gz`
+
+- Generate sdist
+NOTE: Make sure your checkout is clean at this stage - any untracked or changed files will otherwise be included in the file produced.
+`python setup.py compile_assets sdist bdist_wheel`
+
+- Rename the sdist
+```
+mv dist/apache-airflow-${VERSION%rc?}.tar.gz apache-airflow-${VERSION}-bin.tar.gz
+mv dist/apache_airflow-${VERSION%rc?}-py2.py3-none-any.whl apache_airflow-${VERSION}-py2.py3-none-any.whl
+```
+
+- Generate SHA512/ASC (If you have not generated a key yet, generate it by following instructions on http://www.apache.org/dev/openpgp.html#key-gen-generate-key)
+```
+${AIRFLOW_REPO_ROOT}/dev/sign.sh apache-airflow-${VERSION}-source.tar.gz
+${AIRFLOW_REPO_ROOT}/dev/sign.sh apache-airflow-${VERSION}-bin.tar.gz
+${AIRFLOW_REPO_ROOT}/dev/sign.sh apache_airflow-${VERSION}-py2.py3-none-any.whl
+```
+
+- Push Tags
+`git push --tags`
+
+- Push the artifacts to ASF dev dist repo
+```
+# First clone the repo
+svn checkout https://dist.apache.org/repos/dist/dev/airflow airflow-dev
+
+# Create new folder for the release
+cd airflow-dev
+svn mkdir ${VERSION}
+
+# Move the artifacts to svn folder & commit
+mv ${AIRFLOW_REPO_ROOT}/apache{-,_}airflow-${VERSION}* ${VERSION}/
+cd ${VERSION}
+svn add *
+svn commit -m "Add artifacts for Airflow ${VERSION}"
+```
+
+# PyPI Snapshots
+
+At this point we have the artefact that we vote on, but as a convenience to developers we also want to publish "snapshots" of the RC builds to pypi for installing via pip. To do this we need to
+
+- Edit the airflow/version.py to include the RC suffix.
+- python setup.py compile_assets sdist bdist_wheel
+- Follow the steps in [here](#Publishing-to-PyPi)
+- Throw away the change - we don't want to commit this: `git checkout airflow/version.py`
+
+It is important to stress that this snapshot is not intended for users.
+
+# Make sure your public key is on id.apache.org and in KEYS
+
+You will need to sign the release artifacts with your pgp key. After you have created a key, make sure you
+
+- Add your GPG pub key to https://dist.apache.org/repos/dist/release/airflow/KEYS , follow the instructions at the top of that file. Upload your GPG public key to https://pgp.mit.edu 
+- Add your key fingerprint to https://id.apache.org/ (login with your apache credentials, paste your fingerprint into the pgp fingerprint field and hit save).
+
+```

Review comment:
       ```suggestion
   ```shell script
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org