|
24 | 24 | # XXX next command should avoid redefining the path in every step, but
|
25 | 25 | # made the process crash as it couldn't find deactivate
|
26 | 26 | #echo '##vso[task.prependpath]$HOME/miniconda3/bin'
|
27 |
| - echo '##vso[task.setvariable variable=CONDA_ENV]pandas-dev' |
28 | 27 | echo '##vso[task.setvariable variable=ENV_FILE]environment.yml'
|
29 | 28 | echo '##vso[task.setvariable variable=AZURE]true'
|
30 | 29 | displayName: 'Setting environment variables'
|
@@ -116,3 +115,65 @@ jobs:
|
116 | 115 | fi
|
117 | 116 | displayName: 'Running benchmarks'
|
118 | 117 | condition: true
|
| 118 | +
|
| 119 | +- job: 'Docs' |
| 120 | + pool: |
| 121 | + vmImage: ubuntu-16.04 |
| 122 | + timeoutInMinutes: 90 |
| 123 | + steps: |
| 124 | + - script: | |
| 125 | + echo '##vso[task.setvariable variable=ENV_FILE]ci/deps/travis-36-doc.yaml' |
| 126 | + displayName: 'Setting environment variables' |
| 127 | +
|
| 128 | + - script: | |
| 129 | + export PATH=$HOME/miniconda3/bin:$PATH |
| 130 | + sudo apt-get install -y libc6-dev-i386 |
| 131 | + ci/setup_env.sh |
| 132 | + displayName: 'Setup environment and build pandas' |
| 133 | +
|
| 134 | + - script: | |
| 135 | + export PATH=$HOME/miniconda3/bin:$PATH |
| 136 | + source activate pandas-dev |
| 137 | + doc/make.py |
| 138 | + displayName: 'Build documentation' |
| 139 | +
|
| 140 | + - script: | |
| 141 | + cd doc/build/html |
| 142 | + git init |
| 143 | + touch .nojekyll |
| 144 | + echo "dev.pandas.io" > CNAME |
| 145 | + git add --all . |
| 146 | + git config user.email "[email protected]" |
| 147 | + git config user.name "pandas-docs-bot" |
| 148 | + git commit -m "pandas documentation in master" |
| 149 | + displayName: 'Create git repo for docs build' |
| 150 | + condition : | |
| 151 | + and(not(eq(variables['Build.Reason'], 'PullRequest')), |
| 152 | + eq(variables['Build.SourceBranch'], 'refs/heads/master')) |
| 153 | +
|
| 154 | + # For `InstallSSHKey@0` to work, next steps are required: |
| 155 | + # 1. Generate a pair of private/public keys (i.e. `ssh-keygen -t rsa -b 4096 -C "[email protected]"`) |
| 156 | + # 2. Go to "Library > Secure files" in the Azure Pipelines dashboard: https://dev.azure.com/pandas-dev/pandas/_library?itemType=SecureFiles |
| 157 | + # 3. Click on "+ Secure file" |
| 158 | + # 4. Upload the private key (the name of the file must match with the specified in "sshKeySecureFile" input below, "pandas_docs_key") |
| 159 | + # 5. Click on file name after it is created, tick the box "Authorize for use in all pipelines" and save |
| 160 | + # 6. The public key specified in "sshPublicKey" is the pair of the uploaded private key, and needs to be set as a deploy key of the repo where the docs will be pushed (with write access): https://github.com/pandas-dev/pandas-dev.github.io/settings/keys |
| 161 | + - task: InstallSSHKey@0 |
| 162 | + inputs: |
| 163 | + hostName: 'github.com,192.30.252.128 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==' |
| 164 | + sshPublicKey: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDHmz3l/EdqrgNxEUKkwDUuUcLv91unig03pYFGO/DMIgCmPdMG96zAgfnESd837Rm0wSSqylwSzkRJt5MV/TpFlcVifDLDQmUhqCeO8Z6dLl/oe35UKmyYICVwcvQTAaHNnYRpKC5IUlTh0JEtw9fGlnp1Ta7U1ENBLbKdpywczElhZu+hOQ892zqOj3CwA+U2329/d6cd7YnqIKoFN9DWT3kS5K6JE4IoBfQEVekIOs23bKjNLvPoOmi6CroAhu/K8j+NCWQjge5eJf2x/yTnIIP1PlEcXoHIr8io517posIx3TBup+CN8bNS1PpDW3jyD3ttl1uoBudjOQrobNnJeR6Rn67DRkG6IhSwr3BWj8alwUG5mTdZzwV5Pa9KZFdIiqX7NoDGg+itsR39QCn0thK8lGRNSR8KrWC1PSjecwelKBO7uQ7rnk/rkrZdBWR4oEA8YgNH8tirUw5WfOr5a0AIaJicKxGKNdMxZt+zmC+bS7F4YCOGIm9KHa43RrKhoGRhRf9fHHHKUPwFGqtWG4ykcUgoamDOURJyepesBAO3FiRE9rLU6ILbB3yEqqoekborHmAJD5vf7PWItW3Q/YQKuk3kkqRcKnexPyzyyq5lUgTi8CxxZdaASIOu294wjBhhdyHlXEkVTNJ9JKkj/obF+XiIIp0cBDsOXY9hDQ== [email protected]' |
| 165 | + sshKeySecureFile: 'pandas_docs_key' |
| 166 | + displayName: 'Install GitHub ssh deployment key' |
| 167 | + condition : | |
| 168 | + and(not(eq(variables['Build.Reason'], 'PullRequest')), |
| 169 | + eq(variables['Build.SourceBranch'], 'refs/heads/master')) |
| 170 | +
|
| 171 | + - script: | |
| 172 | + cd doc/build/html |
| 173 | + git remote add origin [email protected]:pandas-dev/pandas-dev.github.io.git |
| 174 | + git push -f origin master |
| 175 | + exit 0 # FIXME this will leave the build green even if the step fails. To be removed when we are confident with this. |
| 176 | + displayName: 'Publish docs to GitHub pages' |
| 177 | + condition : | |
| 178 | + and(not(eq(variables['Build.Reason'], 'PullRequest')), |
| 179 | + eq(variables['Build.SourceBranch'], 'refs/heads/master')) |
0 commit comments