# Licensed to the Apache Software Foundation (ASF) under one or more contributor
# license agreements; and to You under the Apache License, Version 2.0.

project:
  name: wskdeploy-samples
  namespace: /wskdeploy/samples/

  packages:
    test_package:
      name: test_package
      namespace: /wskdeploy/samples/test
      credential: 12345678ABCDEF
      inputs:
        param: value
