compose-x / ecs_composex

Manage, Configure and Deploy your services and AWS services and applications from your docker-compose definitions
https://docs.compose-x.io
Mozilla Public License 2.0
168 stars 17 forks source link

[FR] x-neptune #562

Closed harrystrainsainsburys closed 2 years ago

harrystrainsainsburys commented 2 years ago

Is your feature request related to a problem? Please describe. As a developer/cloud engineer I'd like an easy way for my service running in ECS to access NeptuneDB through ecs-compose-x templates. Please implement this in a similar manner to how we deal with rds lookup. One notable difference is that "Amazon Neptune does not support user name/password–based access control" so pulling secrets will not be required here. See IAM Authentication and Access Control in: https://docs.aws.amazon.com/neptune/latest/userguide/limits.html

Describe the solution you'd like

x-neptune:
  neptunedb:
    Lookup:
      RoleArn: arn:aws:iam::1234567890:role/example-cross-account-iam-role
      cluster:
        Name: neptune-db-cluster
    Settings:
       EnvNames:
          - NEPTUNE_DB
    Services:
         - name: exampleecsservice
         - access: RW

Additional context (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html)

JohnPreston commented 2 years ago

@harrystrainsainsburys

Please could you try with the Lookup in your pipeline on the branch used in #565

The Lookup syntax

x-neptune:
  graphdb-A:
    Lookup:
      Tags:
        - key: value
      RoleArn: <>
    Services:
      - name: service-name
        access:
          NeptuneDB: connect # mandatory
          DBCluster: RO # mandatory ATM. 

Thank you.

JohnPreston commented 2 years ago

Merge did not actually address the neptune changes.

JohnPreston commented 2 years ago

Now in main