123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- {{- define "ipfs.configuration" -}}
- {{/* Default Swarm Addresses https://github.com/ipfs/kubo/blob/master/docs/config.md#addressesswarm */}}
- {{ $swarmAddressesList := (list
- (printf "/ip4/0.0.0.0/tcp/%v" .Values.ipfsNetwork.swarmPort)
- (printf "/ip6/::/tcp/%v" .Values.ipfsNetwork.swarmPort)
- (printf "/ip4/0.0.0.0/udp/%v/quic" .Values.ipfsNetwork.swarmPort)
- (printf "/ip4/0.0.0.0/udp/%v/quic-v1" .Values.ipfsNetwork.swarmPort)
- (printf "/ip4/0.0.0.0/udp/%v/quic-v1/webtransport" .Values.ipfsNetwork.swarmPort)
- (printf "/ip6/::/udp/%v/quic" .Values.ipfsNetwork.swarmPort)
- (printf "/ip6/::/udp/%v/quic-v1" .Values.ipfsNetwork.swarmPort)
- (printf "/ip6/::/udp/%v/quic-v1/webtransport" .Values.ipfsNetwork.swarmPort)
- ) }}
- {{ $swarmAddresses := printf "[ \"%s\" ]" (join "\", \"" $swarmAddressesList) }}
- {{/* Default API Address https://github.com/ipfs/kubo/blob/master/docs/config.md#addressesapi */}}
- {{ $apiAddresses := printf "/ip4/0.0.0.0/tcp/%v" .Values.ipfsNetwork.apiPort }}
- {{/* Default Gateway Address https://github.com/ipfs/kubo/blob/master/docs/config.md#addressesgateway */}}
- {{ $gatewayAddresses := printf "/ip4/0.0.0.0/tcp/%v" .Values.ipfsNetwork.gatewayPort }}
- {{ $allowOrigins := "[ \"*\" ]" }}
- {{ $allowMethods := "[ \"PUT\", \"POST\" ]" }}
- {{/* Configmaps */}}
- configmap:
- config-script:
- enabled: true
- data:
- init-config.sh: |
- #!/bin/sh
- set -e
- if [ ! -f /data/ipfs/config ]; then
- # Create the IPFS config file
- echo "Initializing IPFS"
- ipfs init
- fi
- # Configure the Addresses.API
- echo "Configuring the Addresses.API to {{ $apiAddresses }}"
- ipfs config Addresses.API {{ $apiAddresses }}
- # Configure the Addresses.Gateway
- echo "Configuring the Addresses.Gateway to {{ $gatewayAddresses }}"
- ipfs config Addresses.Gateway {{ $gatewayAddresses }}
- # Configure the Addresses.Swarm
- echo "Configuring the Addresses.Swarm to {{ $swarmAddresses | squote }}"
- ipfs config Addresses.Swarm --json {{ $swarmAddresses | squote }}
- # Configure the API.HTTPHeaders.Access-Control-Allow-Origin
- echo "Configuring the API.HTTPHeaders.Access-Control-Allow-Origin to {{ $allowOrigins | squote }}"
- ipfs config API.HTTPHeaders.Access-Control-Allow-Origin --json {{ $allowOrigins | squote }}
- # Configure the API.HTTPHeaders.Access-Control-Allow-Methods
- echo "Configuring the API.HTTPHeaders.Access-Control-Allow-Methods to {{ $allowMethods | squote }}"
- ipfs config API.HTTPHeaders.Access-Control-Allow-Methods --json {{ $allowMethods | squote }}
- echo "Finished configuring IPFS"
- {{- end -}}
|