Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setting up azure pipeline #107

Open
wants to merge 25 commits into
base: master
Choose a base branch
from

Conversation

bhavaniravi
Copy link
Contributor

1. Setup azure pipeline
2. Wrote a minimalistic azure-pipeline.yml by taking inspiration from pandas repo
3. used Makefile from #51 to add doc building pipeline

Copy link
Member

@sara-02 sara-02 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, is this again a WIP PR?
I have a few doubts regarding hardcoded values in it 😕
Otherwise, this looks good as per my knowledge.

ne(variables['Build.SourceBranch'], 'refs/heads/master'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 90
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we parameterize the time? Or is this a hard requirement?

echo "dev.pandas.io" > CNAME
printf "User-agent: *\nDisallow: /" > robots.txt
git add --all .
git config user.email "[email protected]"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parameterise user.email?

printf "User-agent: *\nDisallow: /" > robots.txt
git add --all .
git config user.email "[email protected]"
git config user.name "bhavaniravi"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above?

# 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
- task: InstallSSHKey@0
inputs:
hostName: 'github.com,192.30.252.128 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, can this be an env parameter?

- task: InstallSSHKey@0
inputs:
hostName: 'github.com,192.30.252.128 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='
sshPublicKey: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCtG+MWrDGt7dHml+IJT9VCmibD7VTCGkax1EBUiCNaao4XhMZycZJLoRWkTtFIvFW323YPc0H892fAp+8HFCNOp4FpKVoThhs+NghUCvpEK/eifsWUrcQakyoyH+19tcuCUWYaXuF8O70y6FL+fWhzRfITRUdQC697l+zw3s39Up80xTC2QQXaWsv54PfZYQbiVvL9mrufIoJ569W27hKmv742euVfoQzcgfX+FAhChWroBM7WtqLpVVFgcMfB37uOCUKxBkECJvRzOuH4c8yXK0UQAdrIsiy89QUEvG2GobHl9MnYjbkSlFCt03Q4rPwrGIvM1R7XnTma9QkRYcHFKYaYhGQhAnux+fNEEGmw/ssWMnqE0wb4cmt4/l/K4VYwPiMok/WWwgGbwedjTahXMyFkXt8lnR7lQwDHjy/ZOw9ZYcZF/7FnjlKyC0QfXc8TLk1E0v84S6lvoMnYwFTS2dwEd/N2O4fGHC+TXI9B2upa3FB6P2ef+6rYZBdKcJvq8WZd9dqxn71pEtXHA3iI2+gx4VZq1Q+BQ6CHSYgoNsJFo7atO455MKMM3B2d2/D2/GfD3sygB1B09OCAjf8MrnRIGjkkaUXqzbvLp0BkKemH0VUu4SQr8028gsSvuLizNphdgLN0EI/rfM+Ln1zglHi5PBc4f2WURyntFNSeuQ== [email protected]'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This as well?

@bhavaniravi
Copy link
Contributor Author

@sara-02 Thanks for the suggestions. I am kind of done with the first iteration. I am wondering why the build is not triggered in this PR because when I tried doing it for #106 it triggered for that branch alone.

The hard-coded values are from the pandas repo. I just replicated the method followed there

@sara-02
Copy link
Member

sara-02 commented Aug 6, 2019

Also, one more thing, more of a question about how does pandas-dev perform adding commits, and what strategy we follow. Do we retain all the commit history or squash it into a single commit before merging?
@datapythonista @dujm

@bhavaniravi
Copy link
Contributor Author

@sara-02 When I worked on this issue for pandas they didn't ask me to squash the commits. Not sure if that's the standard

pandas-dev/pandas#26876

@sara-02
Copy link
Member

sara-02 commented Aug 6, 2019

@sara-02 Thanks for the suggestions. I am kind of done with the first iteration. I am wondering why the build is not triggered in this PR because when I tried doing it for #106 it triggered for that branch alone.

The hard-coded values are from the pandas repo. I just replicated the method followed there

Hey not an expert here, but in my last org, unless you were a public member of the group, the CI would not trigger. If you want to give it a shot, maybe try making your membership in python-sprint public instead of private. Go to https://github.com/orgs/python-sprints/people and test with your status modified.

@datapythonista
Copy link
Member

Great job, looks really good. Couple of comments:

The condition in the job is saying that this build will just run for commits to master, and not PRs. I don't think the CI is not running because of this, but the build wouldn't happen. The reason we have this in pandas is that PR builds are not able to access the secret variables for security reasons, so we can't push to the repo since we can't read the token.

Unrelated, my preference would be to set up the CI with a hello world build as you did, and then add the build to the docs. Gradually if possible. Obviously you learned a lot about how it works @bhavaniravi, but would be nice if the rest of the people is able to follow step by step. And all this in a single PR is too much I think.

About the squashing, GitHub has the option to do the squashing when merging a PR. For me there is no value in the local commits people do, so I've been squashing here too, so in the history of the repo we just have one commit per PR. Happy to have a discussion about this (this PR doesn't seem to be the best place, but an issue can be created).

@datapythonista
Copy link
Member

Forgot about the emails, usernames... All the ones in the azure pipelines config file are mostly useless. When I set up that in pandas I used the project dev list, just to have something nice. but root@localhost is as good. For the username pandas-mentoring-ci could be descriptive, even if there is not much use for it.

My preference would be to have something hardcoded that is not the actual email of anyone, but it doesn't make a difference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants