ripclawffb.helix_core.helix_core_depot module – Manage depots on Perforce Helix Core

Note

This module is part of the ripclawffb.helix_core collection (version 1.3.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install ripclawffb.helix_core. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: ripclawffb.helix_core.helix_core_depot.

New in ripclawffb.helix_core 1.0.0

Synopsis

  • Create or edit a depot specification.

  • This module supports check mode.

Requirements

The below requirements are needed on the host that executes this module.

  • P4Python pip module is required

Parameters

Parameter

Comments

address

string

If the Type is remote, the address should be the P4PORT address of the remote server

charset

aliases: p4charset

string

Character set used for translation of unicode files

Can also use ‘P4CHARSET’ environment variable

Default: "none"

depot

string / required

The name of the depot that needs to be managed

description

string

A textual description of the depot

Default: "Created by user."

map

string

For a local depot, the Map field specifies the filesystem location of the archive contents for files in the depot

password

aliases: p4passwd

string / required

The login password

Can also use ‘P4PASSWD’ environment variable

server

aliases: p4port

string / required

The hostname/ip and port of the server (perforce:1666)

Can also use ‘P4PORT’ environment variable

specmap

string

For spec depots, an optional description of which specs should be saved, expressed as a view

state

string

Determines if the depot is present or deleted

Choices:

  • "present" ← (default)

  • "absent"

streamdepth

string

The default is one level below the name of the depot

Default: "1"

suffix

string / required

If the Type is spec, this field holds an optional suffix for generated paths to objects in the spec depot

Default: ".p4s"

type

string

The type of depot

Choices:

  • "local" ← (default)

  • "remote"

  • "stream"

  • "spec"

  • "unload"

  • "archive"

  • "tangent"

  • "graph"

user

aliases: p4user

string / required

A user with access to perform this operation

Can also use ‘P4USER’ environment variable

See Also

See also

Helix Core Depot

Create or edit a depot

P4Python Pip Module

Python module to interact with Helix Core

Examples

# Create a depot
- name: Create a new depot
  helix_core_depot:
    state: present
    name: bruno_new_depot
    description: 'New depot for Bruno'
    server: '1666'
    user: bruno
    charset: none
    password: ''

# Delete a depot
- name: Delete a depot
  helix_core_depot:
    state: absent
    name: bruno_new_depot
    server: '1666'
    user: bruno
    charset: none
    password: ''

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

action

string

The action performed on the resource.

Returned: always

Can only return:

  • "created"

  • "updated"

  • "deleted"

  • "unchanged"

Sample: "created"

changed

boolean

Whether any changes were made to the depot.

Returned: always

Sample: true

changes

list / elements=dictionary

List of fields that were changed.

Returned: always

Sample: [{"after": "New description", "before": "Old description", "field": "Description"}]

depot_spec

dictionary

The depot specification after the operation.

Returned: always

Sample: {"Depot": "my_depot", "Description": "My depot", "Type": "local"}

diff

dictionary

A dictionary containing ‘before’ and ‘after’ state of the resource.

Returned: when diff mode is enabled

after

string

The state of the resource after the action.

Returned: success

before

string

The state of the resource before the action.

Returned: success

Authors

  • Asif Shaikh (@ripclawffb)