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

working example project of pygradle #354

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 78 additions & 0 deletions examples/working-example-project/activate
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly

deactivate () {
unset -f pydoc >/dev/null 2>&1

# reset old environment variables
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then
PATH="$_OLD_VIRTUAL_PATH"
export PATH
unset _OLD_VIRTUAL_PATH
fi
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
export PYTHONHOME
unset _OLD_VIRTUAL_PYTHONHOME
fi

# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
hash -r 2>/dev/null
fi

if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
PS1="$_OLD_VIRTUAL_PS1"
export PS1
unset _OLD_VIRTUAL_PS1
fi

unset VIRTUAL_ENV
if [ ! "${1-}" = "nondestructive" ] ; then
# Self destruct!
unset -f deactivate
fi
}

# unset irrelevant variables
deactivate nondestructive

VIRTUAL_ENV="/home/prasad.kudale/mig-v2/kite/kite-python/build/venv"
export VIRTUAL_ENV

_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"
export PATH

# unset PYTHONHOME if set
if ! [ -z "${PYTHONHOME+_}" ] ; then
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
unset PYTHONHOME
fi

if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
_OLD_VIRTUAL_PS1="$PS1"
if [ "x(kite-python)" != x ] ; then
PS1="(kite-python)$PS1"
else
PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1"
fi
export PS1
fi

# Make sure to unalias pydoc if it's already there
alias pydoc 2>/dev/null >/dev/null && unalias pydoc

pydoc () {
python -m pydoc "$@"
}

# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
hash -r 2>/dev/null
fi
51 changes: 51 additions & 0 deletions examples/working-example-project/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
buildscript {
dependencies {
classpath "gradle.plugin.com.linkedin.pygradle:pygradle-plugin:+"
}
repositories {
/**
* Repository for gradle.plugin.com.linkedin.pygradle:pygradle-plugin plugin
*/
maven {
url "https://plugins.gradle.org/m2/"
}
}
}

repositories {
/**
* created the local pypi repository
*/
ivy {
name 'pypi-repo'
url "pypi-repo/"
layout 'pattern', {
artifact '[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]'
ivy '[organisation]/[module]/[revision]/[module]-[revision].ivy'
}
}
}

apply plugin: "idea"
apply plugin: 'com.linkedin.python'
tasks.flake8.enabled(false)
tasks.installProject.enabled(false)
tasks.pytest.dependsOn(':examples:working-example-project:pipInstallRequirements')

python {
testDir = file('test')
}
dependencies {
python 'pypi:requests:2.9.1'
python 'pypi:pyflakes:2.4.0'
test 'pypi:mock:4.0.3'
}


task pipInstallRequirements(type: Exec) {
commandLine "bash", "-c", "source ../../build/examples/working-example-project/venv/bin/activate && ../../build/examples/working-example-project/venv/bin/pip3 install -r requirements.txt && deactivate"
}

task runTests(type: Exec) {
commandLine "bash", "./runTests.sh"
}
2 changes: 2 additions & 0 deletions examples/working-example-project/pinned.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
requests==2.9.1
pyflakes==2.4.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="Sphinx" revision="1.8.1" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="Sphinx" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="flake8" revision="3.6.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="flake8" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="mock" revision="4.0.3" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="mock" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pex" revision="1.5.2" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pex" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pip" revision="18.1" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pip" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pyflakes" revision="2.4.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pyflakes" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pytest-cov" revision="2.6.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pytest-cov" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pytest-xdist" revision="1.24.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pytest-xdist" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="pytest" revision="3.10.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="pytest" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="requests" revision="2.9.1" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="requests" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="setuptools-git" revision="1.2" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="setuptools-git" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="setuptools" revision="40.5.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="setuptools" ext="zip" conf="default" type="zip" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="virtualenv" revision="16.0.0" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="virtualenv" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<ivy-module version="2.0" xmlns:e="http://ant.apache.org/ivy/extra" xmlns:m="http://ant.apache.org/ivy/maven">
<info organisation="pypi" module="wheel" revision="0.31.1" />
<configurations>
<conf name="default" description="auto generated configuration for default" />
<conf name="source" description="auto generated configuration for source" extends="default" />
</configurations>
<publications>
<artifact name="wheel" ext="tar.gz" conf="default" type="tar.gz" />
</publications>
<dependencies defaultconfmapping="*-&gt;default" />
</ivy-module>
Binary file not shown.
9 changes: 9 additions & 0 deletions examples/working-example-project/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
1. Clone the whole project.
2. add below lines to `settings.gradle`

`include ':examples'`

`include ':examples:working-example-project'`

3. Then run `../../gradlew build` command.
4. Yo! You've successfully built the **`pygradle`** project
44 changes: 44 additions & 0 deletions examples/working-example-project/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
atomicwrites==1.4.0
attr==0.3.1
attrs==21.2.0
flake8==3.6.0
importlib-metadata==4.8.2
pex==1.5.2
pluggy==1.0.0
py==1.11.0
pyflakes==2.4.0
pytest==3.10.0
pytest-cov==2.6.0
pytest-xdist==1.24.0
requests==2.9.1
setuptools-git==1.2
six==1.16.0
Sphinx==1.8.1
typing-extensions==4.0.1
zipp==3.6.0
alabaster==0.7.12
Babel==2.9.1
coverage==6.2
docutils==0.18.1
execnet==1.9.0
imagesize==1.3.0
importlib-metadata==4.8.2
Jinja2==3.0.3
MarkupSafe==2.0.1
mccabe==0.6.1
mock==4.0.3
more-itertools==8.12.0
packaging==21.3
pex==1.5.2
pluggy==1.0.0
py==1.11.0
pycodestyle==2.4.0
Pygments==2.10.0
pyparsing==3.0.6
pytest-forked==1.4.0
pytz==2021.3
snowballstemmer==2.2.0
sphinxcontrib-serializinghtml==1.1.5
sphinxcontrib-websupport==1.2.4
typing-extensions==4.0.1

6 changes: 6 additions & 0 deletions examples/working-example-project/runTests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#! /bin/bash
command -v source >/dev/null 2>&1 || {
echo "I require source but it's not installed. Aborting." >&2; exit 1;
}
source activate
pytest -v --cov --cov-report html
1 change: 1 addition & 0 deletions examples/working-example-project/setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[flake8]
Loading