mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
CLOUDSTACK-9334: Support jenv and pyenv to manage Java and Python versions
* Adds .java-version to specify Java 1.7 as the JDK version to use
for CloudStack development.
* Adds .python-vresion to specify Python 2.7.11 as the Python to
use for CloudStack development.
* Adds requirements.txt to specify the default dependencies used
for CloudStack development. It does not include Marvin's
dependencies because it's bundle already defines the dependencies
which are installed with Marvin.
* Adds .java-version and .python-version to the RAT excludes
because neither jenv or pyenv support comments in these files
* Updates INSTALL.md to explain how to utilize jenv and pyenv for
CloudStack development
This commit is contained in:
parent
0dcaf197b4
commit
7add16d3d9
1
.java-version
Normal file
1
.java-version
Normal file
@ -0,0 +1 @@
|
|||||||
|
1.7
|
||||||
1
.python-version
Normal file
1
.python-version
Normal file
@ -0,0 +1 @@
|
|||||||
|
cloudstack
|
||||||
17
INSTALL.md
17
INSTALL.md
@ -38,6 +38,23 @@ Start the MySQL service:
|
|||||||
|
|
||||||
$ service mysqld start
|
$ service mysqld start
|
||||||
|
|
||||||
|
### Using jenv and/or pyenv for Version Management
|
||||||
|
|
||||||
|
CloudStack is built using Java and Python. To make selection of these tools versions more consistent and ease installation for developers, optional support for [jenv](http://www.jenv.be/) and [pyenv](https://github.com/yyuu/pyenv) with [virtualenv]|(https://github.com/yyuu/pyenv-virtualenv) is provided. jenv installation instructions are available here and pyenv installation instructions are available here. For users of [oh-my-zsh](http://ohmyz.sh/) there is a pyenv plugin available to trigger configuration of pyenv in a shell session.
|
||||||
|
|
||||||
|
Following installation, execute the following commands to configure jenv and pyenv for use with CloudStack development:
|
||||||
|
|
||||||
|
'''
|
||||||
|
# pyenv install 2.7.11 # Install Python 2.7.11
|
||||||
|
# pyenv virtualenv 2.7.11 cloudstack # Create a cloidstack virtualenv using Python 2.7.11
|
||||||
|
# pip install -r <root CloudStack source tree>/requirements.txt # Install cloudstack Python dependencies
|
||||||
|
# jenv add <path to JDK 1.7 installation> # Add Java7 to jenv
|
||||||
|
'''
|
||||||
|
|
||||||
|
*N.B.* If you are running Linux, you may need to install additional packages to allow pyenv to build Python.
|
||||||
|
|
||||||
|
Following these steps, jenv and pyenv will use .java-version and .python-version files in the root of the CloudStack source tree to switch to the correct Java version and the cloudstack Python virtualenv for CloudStack development.
|
||||||
|
|
||||||
## Getting the Source Code
|
## Getting the Source Code
|
||||||
|
|
||||||
You may get the source code from the repository hosted on Apache:
|
You may get the source code from the repository hosted on Apache:
|
||||||
|
|||||||
2
pom.xml
2
pom.xml
@ -756,6 +756,8 @@
|
|||||||
<exclude>CONTRIBUTING.md</exclude>
|
<exclude>CONTRIBUTING.md</exclude>
|
||||||
<exclude>tools/docker/Dockerfile</exclude>
|
<exclude>tools/docker/Dockerfile</exclude>
|
||||||
<exclude>tools/docker/supervisord.conf</exclude>
|
<exclude>tools/docker/supervisord.conf</exclude>
|
||||||
|
<exclude>.java-version</exclude>
|
||||||
|
<exclude>.python-version</exclude>
|
||||||
<exclude>.idea/</exclude>
|
<exclude>.idea/</exclude>
|
||||||
<exclude>**/*.log</exclude>
|
<exclude>**/*.log</exclude>
|
||||||
<exclude>**/*.patch</exclude>
|
<exclude>**/*.patch</exclude>
|
||||||
|
|||||||
21
requirements.txt
Normal file
21
requirements.txt
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
|
||||||
|
# Install the latest version of cloudmonkey
|
||||||
|
cloudmonkey
|
||||||
|
|
||||||
|
# Marvin dependencies are installed via its bundle
|
||||||
Loading…
x
Reference in New Issue
Block a user