diff --git a/README.md b/README.md index 60fb0dd..128b88d 100644 --- a/README.md +++ b/README.md @@ -74,8 +74,8 @@ to `yes`): Galaxy Tool Shed). - `galaxy_manage_database`: Upgrade the database schema as necessary, when new schema versions become available. -- `galaxy_fetch_eggs`: Fetch Galaxy dependent modules (packaged as Python - eggs). +- `galaxy_fetch_dependencies`: Fetch Galaxy dependent modules to the Galaxy + virtualenv. You can control various things about where you get Galaxy from, what version you use, and where its configuration files will be placed: @@ -85,16 +85,20 @@ you use, and where its configuration files will be placed: - `galaxy_git_repo` (default: `https://github.com/galaxyproject/galaxy.git`): Upstream Git repository from which Galaxy should be cloned. - `galaxy_changeset_id` (default: `stable`): A changeset id, tag, branch, or - other valid Mercurial identifier for which changeset Galaxy should be updated - to. Specifying a branch will update to the latest changeset on that branch. A - debugging message will notify you if the current changeset of your Galaxy - server is different from this value. There is no harm in this, but: + other valid Git or Mercurial identifier for which changeset Galaxy should be + updated to. Specifying a branch will update to the latest changeset on that + branch. A debugging message will notify you if the current changeset of your + Galaxy server is different from this value. There is no harm in this, but: - if this annoys you, you must use a full (long) changeset hash to prevent that task from reporting **changed** on every run, and - using a real changeset hash is the only way to explicitly lock Galaxy at a specific version. - `galaxy_force_checkout` (default: `no`): If `yes`, any modified files in the Galaxy repository will be discarded. +- `galaxy_requirements_file` (default: + `/lib/galaxy/dependencies/pinned-requirements.txt`): The + Python `requirements.txt` file that should be used to install Galaxy + dependent modules using pip. - `galaxy_venv_dir` (default: `/.venv`): The role will create a [virtualenv][virtualenv] from which Galaxy will run, this controls where the virtualenv will be placed. diff --git a/defaults/main.yml b/defaults/main.yml index 504feb2..a9b7666 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -42,6 +42,7 @@ galaxy_mutable_config_dir: "{{ galaxy_server_dir }}" galaxy_mutable_data_dir: "{{ galaxy_server_dir }}/database" galaxy_config_file: "{{ galaxy_config_dir }}/galaxy.ini" galaxy_shed_tool_conf_file: "{{ galaxy_mutable_config_dir }}/shed_tool_conf.xml" +galaxy_requirements_file: "{{ galaxy_server_dir }}/lib/galaxy/dependencies/pinned-requirements.txt" # The default Galaxy configuration, ensures that Galaxy can find all of the # configs if galaxy_config_dir != galaxy_server_dir diff --git a/tasks/dependencies.yml b/tasks/dependencies.yml index bb59e62..0076d87 100644 --- a/tasks/dependencies.yml +++ b/tasks/dependencies.yml @@ -3,7 +3,7 @@ - name: Check if Galaxy uses eggs or wheels stat: - path: "{{ galaxy_server_dir }}/lib/galaxy/dependencies/requirements.txt" + path: "{{ galaxy_requirements_file }}" register: requirements_txt - name: Fetch Galaxy eggs @@ -40,7 +40,7 @@ - name: Install Galaxy base dependencies pip: - requirements: "{{ galaxy_server_dir }}/lib/galaxy/dependencies/requirements.txt" + requirements: "{{ galaxy_requirements_file }}" extra_args: "--index-url https://wheels.galaxyproject.org/simple/" virtualenv: "{{ galaxy_venv_dir }}" virtualenv_command: "{{ pip_virtualenv_command | default( 'virtualenv' ) }}"