Forge Home


Types and Providers for FME Server Configuration


6,514 latest version

5.0 quality score

Version information

  • 0.3.0 (latest)
  • 0.2.0
  • 0.1.0
released Oct 26th 2016
This version is compatible with:
  • Puppet Enterprise 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 3.4.0
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'ordnancesurvey-fme', '0.3.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add ordnancesurvey-fme
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install ordnancesurvey-fme --version 0.3.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Tags: fmeserver, fme


ordnancesurvey/fme — version 0.3.0 Oct 26th 2016

License Puppet Forge Version Puppet Forge Downloads Build Status Coverage Status

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with fme
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module


This module provides types and providers for FME resources. The FME Server REST API is used.

Module Description

The types provided by this module use the FME Server v2 REST API to configure various elements of the FME Server.


What fme affects

  • /etc/fme_api_settings.yaml or C:\fme_api_settings.yaml

Setup Requirements

Before using any of the types, the /etc/fme_api_settings.yaml file must first be created. This can be done using the fme::api_settings class. The providers all use rest-client. Rest-client can usually be installed with puppet. eg

package { 'rest-client':
  ensure   => 'installed',
  provider => 'gem',

Beginning with fme

Declare the fme::api_settings class. After that, you can use any of the types offered by the module.


All the fme resource types use the API to query and update the server's configuration. Before using any of these types, declare the fme::api_settings class and this will generate the API settings file containing the API credentials to use.

All the types autorequire the settings file.

Here is a simple example with comments.

# Configure access to REST API
class { 'fme::api_settings':
  username => 'admin',
  password => 'password',
  protocol => 'https',
  port     => 443,

# Create a user
fme_user { 'myuser':
  fullname => 'My User',
  password => 'topsecret',

# Create a repository
fme_repository { 'my_repo':
  ensure => present,

# Upload a workspace to the repository
fme_repository_item { 'my_repo/item.fmw':
  ensure => present,
  source => '/path/to/item.fmw',

# Upload an FME resource
fme_resource { 'FME_SHAREDRESOURCE_DATA:/foo/':
  ensure   => file,
  checksum => true,
  source   => '/path/to/',

# Modify an FME service for HTTPS
fme_service { 'fmedatadownload':
  url => "https://${::fqdn}/fmedatadownload",



Public Classes

*fme::api_settings: Creates an fme_api_settings.yaml file




Sets the API username. mandatory


Sets the API password. mandatory


Sets the FME Server to connect to. Default: 'localhost'.


Sets the TCP port of the FME Server API. Default: 80.


Sets the protocol to use. Valid options: 'http' or 'https'. Default: 'http'.


This is an early release with only a few types implemented.