{"id":32176370,"url":"https://github.com/openalea/deploy","last_synced_at":"2025-10-21T19:59:12.747Z","repository":{"id":18889658,"uuid":"22107514","full_name":"openalea/deploy","owner":"openalea","description":"OpenAlea.Deploy support the installation of OpenAlea packages via the network and manage their dependencies.","archived":false,"fork":false,"pushed_at":"2024-11-25T08:53:59.000Z","size":645,"stargazers_count":2,"open_issues_count":4,"forks_count":7,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-10-21T19:59:03.071Z","etag":null,"topics":["openalea","setuptools"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openalea.png","metadata":{"files":{"readme":"README.rst","changelog":"HISTORY.rst","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-07-22T14:39:25.000Z","updated_at":"2024-10-28T08:59:38.000Z","dependencies_parsed_at":"2024-05-13T10:55:17.450Z","dependency_job_id":"bd91541d-3153-4332-88b4-e7b7bd427d88","html_url":"https://github.com/openalea/deploy","commit_stats":{"total_commits":340,"total_committers":18,"mean_commits":18.88888888888889,"dds":0.7176470588235294,"last_synced_commit":"04b54d8f7fcdfbe18f4bbdb230108a1a7e476a61"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/openalea/deploy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openalea%2Fdeploy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openalea%2Fdeploy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openalea%2Fdeploy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openalea%2Fdeploy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openalea","download_url":"https://codeload.github.com/openalea/deploy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openalea%2Fdeploy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280325297,"owners_count":26311419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["openalea","setuptools"],"created_at":"2025-10-21T19:59:11.506Z","updated_at":"2025-10-21T19:59:12.740Z","avatar_url":"https://github.com/openalea.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. image:: https://img.shields.io/badge/License-CeCILL_C-blue.svg\n   :target: http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html\n\n.. image:: https://anaconda.org/conda-forge/openalea.deploy/badges/downloads.svg\n   :target: https://anaconda.org/conda-forge/openalea.deploy\n\n.. image:: https://anaconda.org/conda-forge/openalea.deploy/badges/platforms.svg\n   :target: https://anaconda.org/conda-forge/openalea.deploy\n   \n.. image:: https://anaconda.org/conda-forge/openalea.deploy/badges/installer/conda.svg   \n   :target: https://conda.anaconda.org/conda-forge\n========================\nOpenalea.Deploy\n========================\n\n.. {# pkglts, doc\n\n.. #}\n\nOpenAlea.Deploy support the installation of OpenAlea packages via the network and manage their dependencies. It is an extension of Setuptools. \n\n**Authors** : S. Dufour-Kowalski, C. Pradal\n\n**Contributors** : OpenAlea Consortium\n\n**Institutes** : INRIA/CIRAD/INRA\n\n**Type** : Pure Python package\n\n**Status** : Devel\n\n**License** : CeCILL-C\n\n\nAbout\n------\n\nOpenAlea.Deploy support the installation of OpenAlea packages via the network and manage\ntheir dependencies .\nIt is an extension of Setuptools_.\nThe last version is only available for Python 3.\n\n\n**Additional Features** :\n   * Discover and manage packages in EGG format\n   * Declare shared libraries directory and include directories\n   * Call SCons scripts\n\nIt doesn't include any GUI interface (See [[packages:compilation_installation:deploygui:deploygui|OpenAlea.DeployGui]] for that).\n\nRequirements\n-------------\n\n  * Python_ \u003e= 3.7\n  * Setuptools_\n\nDownload\n---------\n\nSee the [[:download|Download page]].\n\nInstallation\n-------------\n\n  python setup.py install\n\n.. note::\n\n  OpenAlea.Deploy can be automatically installed with the *alea_setup.py* script.\n\n\n.. _Setuptools: https://setuptools.pypa.io/\n.. _Python: http://www.python.org\n\n\nDevelopper Documentation\n-------------------------\n\nTo distribute your package with OpenAlea.Deploy, you need to write a setup.py script\nas you do with setuptools.\n\n  * have a look to the Setuptools_ developer's guide.\n  * OpenAlea.Deploy add a numerous of keywords and commands\n\nSetup keywords\n###############\n\n  * scons_scripts = [list of Scons scripts] : if not empty, call scons to build extensions\n  * scons_parameters = [list of Scons parameters] : such as ``build_prefix=...``\n  * postinstall_scripts = [list of strings] : Each string corresponds to a python module to execute at installation time. The module may contain a install function ``def install():``.\n  * inc_dirs = {dict of dest_dir:src_dir} : Dictionary to map the directory containing the header files.\n  * lib_dirs = {dict of dest_dir:src_dir} : Dictionary to map the directory containing the dynamic libraries to share.\n  * share_dirs = {dict of dest_dir:src_dir} : Dictionary to map the directory containing shared data.\n\nAdditional setup.py commands\n#############################\n\n   * *scons* : call scons scripts, usage : ``python setup.py scons``.\n\nFor more information see : ``python setup.py --help-commands``\n\nSetup.py example\n#################\n\n::\n\n    import sys\n    import os\n    from setuptools import setup, find_packages\n    from os.path import join as pj\n\n    build_prefix = \"build-scons\"\n\n    # Setup function\n    setup(\n        name = \"OpenAlea.FakePackage\",\n        version = \"0.1\",\n        author = \"Me\",\n        author_email = \"me@example.com\",\n        description = \"This is an Example Package\",\n        license = 'GPL',\n        keywords = 'fake',\n        url = 'http://myurl.com',\n\n        # Scons\n        scons_scripts = [\"SConstruct\"],\n        scons_parameters = [\"build_prefix=%s\"%(build_prefix)],\n\n        # Packages\n        namespace_packages = [\"openalea\"],\n        packages = ['openalea.fakepackage', ],\n\n        package_dir = {\n                    'openalea.fakepackage':  pj('src','fakepackage'),\n                    '' : 'src',  # necessary to use develop command\n                      },\n        include_package_data = True,\n        zip_safe= False,\n\n        # Specific options of openalea.deploy\n        lib_dirs = { 'lib' : pj(build_prefix, 'lib'), },\n        inc_dirs = { 'include' : pj(build_prefix, 'include') },\n        share_dirs = { 'share' : 'share' },\n\n        # Scripts\n        entry_points = { 'console_scripts': [\n                               'fake_script = openalea.fakepackage.amodule:console_script', ],\n                         'gui_scripts': [\n                               'fake_gui = openalea.fakepackage.amodule:gui_script',]},\n\n        # Dependencies\n        setup_requires = ['openalea.deploy'],\n\n    )\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenalea%2Fdeploy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenalea%2Fdeploy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenalea%2Fdeploy/lists"}