Goodbye microsoft thanks for not a good project management tool!
Official documentation: odious-ado
Please note: This is not complete but is kind of in the ballpark.
The project has three components an API, SDK, and CLI. All of which are still a work in progress and will need to be continually improved to meeting the requirements of the original spec.
There are pre-commit hook that should be setup and followed. However, at this time they can just be bypassed.
A few prerequisite dependencies:
After installing just and pyenv.
- Follow the steps below. Both tools must be in your shell path.
pyenv install 3.11.3
# pyenv will change the local python version based on the .python-version file in root.
just dev install
# After running the just command running the following to verify configuration.
poetry run odious-ado --help- Follow these steps to use pyenv to manage python virtual envs.
# install python
pyenv install 3.11.3
# create a python virtual env
pyenv virtualenv 3.11.3 odious-ado
# activate that python env for usage
pyenv activate odious-ado
# create a new local wheel to be used for the project
poetry install
# pyenv will change the local python version based on the .python-version file in root.
just dev
# verify the python template install
python-template versionupdate pyproject.toml to add these packages correctly - abanna
$ pip install github3.py
$ pip install pytzThis ADO SDK is a bit wack regarding the amount of boilerplate code required to do much of anything... The docs are somewhat lack luster. With that said This project can likely have an MVP built out in a few days.
A few unknowns. How does one release GitHub action... Would like to test this early in the hackation to allow for a smooth ending and time to focus on a nice video presentation.
Main things that we need to do. Get data from workflow action yaml. Use that data to map fields and labels to ado fields etc.
when using github graphql api this site is kind of helpful (graphql explorer)[https://docs.github.com/en/graphql/overview/explorer]
query newName {
repository(owner:"nerds-run", name:"odious-ado") {
issues(last:20, states:OPEN) {
edges {
node {
id
title
url
labels(first:5) {
edges {
node {
id
name
}
}
}
}
}
}
}
}
mutation AddReactionToIssue {
addReaction(input:{subjectId:"I_kwDOKHh5ys5ufKQq",content:EYES}) {
reaction {
content
}
subject {
id
}
}
}
mutation pleaseWork ($project_id: ID! $content_id: ID!) {
addProjectV2ItemById(
input: {
projectId: $project_id contentId: $content_id}
)
{
item {
id
}
}
}
mutation turtle {
updateProjectV2ItemFieldValue(
input: {
projectId: "PVT_kwDOB3mz7c4AUIpb"
itemId: "PVTI_lADOB3mz7c4AUIpbzgIm-CY"
fieldId: "PVTSSF_lADOB3mz7c4AUIpbzgM3Pt4"
value: {
singleSelectOptionId: "603cef85"
}
}
)
{
projectV2Item {
id
}
}}