Skip to content

Commit 6fb3cda

Browse files
committed
Change package name and mail config
1 parent 59c79bf commit 6fb3cda

36 files changed

+1532
-1299
lines changed

.env.example

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,36 @@ NODE_ENV=development
22

33
PORT=3000
44
MAX_FILE_SIZE=25000000
5-
DEFAULT_ORG_ID=1
65

7-
DATASET_PATH=
8-
MEDIA_PATH=
9-
PUBLIC_MEDIA_PATH=
10-
CONFIG_PATH=
11-
WALLET_PATH=
12-
ECKO_WEB_URL=
6+
DATASET_PATH=/usr/data/datasets
7+
MEDIA_PATH=/usr/data/media
8+
PUBLIC_MEDIA_PATH=/usr/data/public/media
9+
CERTS_PATH=/usr/data/config/certs
10+
CONNECTION_PROFILE_PATH=/usr/data/config/connection-profiles
11+
WALLET_PATH=/usr/data/wallet
12+
WEB_URL=https://ecko.uib.no
13+
WEB_NAME=ECKO Resurvey Data Consortium
1314

1415
CRON_INTERVAL_MIN=5
15-
CRON_TIME_ZONE=
16-
17-
NODEMAILER_HOST=
18-
NODEMAILER_PORT=25
19-
NODEMAILER_FROM=
20-
NODEMAILER_TEMPLATE_PATH=./templates
21-
EMAIL_VERIFICATION_EXPIRES_HOURS=
22-
EMAIL_ECKO_CONTACT=
23-
24-
ORCID_CLIENT_ID=
25-
ORCID_CLIENT_SECRET=
26-
ORCID_SCOPE=
27-
ORCID_REDIRECT_URL=
28-
ORCID_AUTH_URL=
29-
ORCID_TOKEN_URL=
30-
ORCID_API_TOKEN_EXP=86400
16+
CRON_TIME_ZONE=Europe/Oslo
17+
18+
MAIL_SERVICE=
19+
MAIL_HOST=
20+
MAIL_PORT=
21+
MAIL_USER=
22+
MAIL_PASS=
23+
MAIL_FROM=
24+
MAIL_TEMPLATE_PATH=./templates
25+
MAIL_CONTACT=
26+
VERIFICATION_EXPIRES_HOURS=48
27+
28+
SSO_CLIENT_ID=
29+
SSO_CLIENT_SECRET=
30+
SSO_SCOPE=
31+
SSO_REDIRECT_URL=
32+
SSO_AUTH_URL=
33+
SSO_TOKEN_URL=
34+
SSO_API_TOKEN_EXP=86400
3135
OAUTH_TOKEN_SECRET=
3236

3337
POSTGRES_HOST=
@@ -44,6 +48,6 @@ SESSION_NAME=sid
4448
SESSION_SECRET=
4549
SESSION_MAX_AGE=7200000
4650

47-
FABRIC_CHANNEL_NAME=
51+
FABRIC_CHANNEL_NAME=eckochannel
4852
FABRIC_CHAINCODE_NAME=DatasetContract
4953
FABRIC_DEFAULT_ORG=1

.eslintrc.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
"indent": "off",
1616
"import/extensions": "off",
1717
"new-cap": "warn",
18+
"no-empty": "warn",
1819
"no-param-reassign": "warn",
1920
"no-shadow": "warn",
2021
"no-unused-vars": "warn"

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@ coverage/
1414
Thumbs.db
1515

1616
# Fabric
17-
wallet/
17+
wallet/*.id
18+
19+
# Whitelist
20+
!*.keep
1821

1922
# Env
2023
.env

Dockerfile

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,94 @@ RUN apk add python3 make g++
55
RUN npm install
66
COPY . .
77
EXPOSE 3000
8+
ARG NODE_ENV
9+
ENV NODE_ENV $NODE_ENV
10+
ARG PORT
11+
ENV PORT $PORT
12+
ARG MAX_FILE_SIZE
13+
ENV MAX_FILE_SIZE $MAX_FILE_SIZE
14+
ARG DATASET_PATH
15+
ENV DATASET_PATH $DATASET_PATH
16+
ARG MEDIA_PATH
17+
ENV MEDIA_PATH $MEDIA_PATH
18+
ARG PUBLIC_MEDIA_PATH
19+
ENV PUBLIC_MEDIA_PATH $PUBLIC_MEDIA_PATH
20+
ARG CERTS_PATH
21+
ENV CERTS_PATH $CERTS_PATH
22+
ARG CONNECTION_PROFILE_PATH
23+
ENV CONNECTION_PROFILE_PATH $CONNECTION_PROFILE_PATH
24+
ARG WALLET_PATH
25+
ENV WALLET_PATH $WALLET_PATH
26+
ARG WEB_URL
27+
ENV WEB_URL $WEB_URL
28+
ARG WEB_NAME
29+
ENV WEB_NAME $WEB_NAME
30+
ARG CRON_INTERVAL_MIN
31+
ENV CRON_INTERVAL_MIN $CRON_INTERVAL_MIN
32+
ARG CRON_TIME_ZONE
33+
ENV CRON_TIME_ZONE $CRON_TIME_ZONE
34+
ARG MAIL_SERVICE
35+
ENV MAIL_SERVICE $MAIL_SERVICE
36+
ARG MAIL_HOST
37+
ENV MAIL_HOST $MAIL_HOST
38+
ARG MAIL_PORT
39+
ENV MAIL_PORT $MAIL_PORT
40+
ARG MAIL_USER
41+
ENV MAIL_USER $MAIL_USER
42+
ARG MAIL_PASS
43+
ENV MAIL_PASS $MAIL_PASS
44+
ARG MAIL_FROM
45+
ENV MAIL_FROM $MAIL_FROM
46+
ARG MAIL_TEMPLATE_PATH
47+
ENV MAIL_TEMPLATE_PATH $MAIL_TEMPLATE_PATH
48+
ARG MAIL_CONTACT
49+
ENV MAIL_CONTACT $MAIL_CONTACT
50+
ARG VERIFICATION_EXPIRES_HOURS
51+
ENV VERIFICATION_EXPIRES_HOURS $VERIFICATION_EXPIRES_HOURS
52+
ARG SSO_CLIENT_ID
53+
ENV SSO_CLIENT_ID $SSO_CLIENT_ID
54+
ARG SSO_CLIENT_SECRET
55+
ENV SSO_CLIENT_SECRET $SSO_CLIENT_SECRET
56+
ARG SSO_SCOPE
57+
ENV SSO_SCOPE $SSO_SCOPE
58+
ARG SSO_REDIRECT_URL
59+
ENV SSO_REDIRECT_URL $SSO_REDIRECT_URL
60+
ARG SSO_AUTH_URL
61+
ENV SSO_AUTH_URL $SSO_AUTH_URL
62+
ARG SSO_TOKEN_URL
63+
ENV SSO_TOKEN_URL $SSO_TOKEN_URL
64+
ARG SSO_API_TOKEN_EXP
65+
ENV SSO_API_TOKEN_EXP $SSO_API_TOKEN_EXP
66+
ARG OAUTH_TOKEN_SECRET
67+
ENV OAUTH_TOKEN_SECRET $OAUTH_TOKEN_SECRET
68+
ARG POSTGRES_HOST
69+
ENV POSTGRES_HOST $POSTGRES_HOST
70+
ARG POSTGRES_PORT
71+
ENV POSTGRES_PORT $POSTGRES_PORT
72+
ARG POSTGRES_DB
73+
ENV POSTGRES_DB $POSTGRES_DB
74+
ARG POSTGRES_USER
75+
ENV POSTGRES_USER $POSTGRES_USER
76+
ARG POSTGRES_PASS
77+
ENV POSTGRES_PASS $POSTGRES_PASS
78+
ARG POSTGRES_FORCE
79+
ENV POSTGRES_FORCE $POSTGRES_FORCE
80+
ARG POSTGRES_INIT
81+
ENV POSTGRES_INIT $POSTGRES_INIT
82+
ARG SESSION_CLEANUP_INTERVAL
83+
ENV SESSION_CLEANUP_INTERVAL $SESSION_CLEANUP_INTERVAL
84+
ARG SESSION_EXPIRES
85+
ENV SESSION_EXPIRES $SESSION_EXPIRES
86+
ARG SESSION_NAME
87+
ENV SESSION_NAME $SESSION_NAME
88+
ARG SESSION_SECRET
89+
ENV SESSION_SECRET $SESSION_SECRET
90+
ARG SESSION_MAX_AGE
91+
ENV SESSION_MAX_AGE $SESSION_MAX_AGE
92+
ARG FABRIC_CHANNEL_NAME
93+
ENV FABRIC_CHANNEL_NAME $FABRIC_CHANNEL_NAME
94+
ARG FABRIC_CHAINCODE_NAME
95+
ENV FABRIC_CHAINCODE_NAME $FABRIC_CHAINCODE_NAME
96+
ARG FABRIC_DEFAULT_ORG
97+
ENV FABRIC_DEFAULT_ORG $FABRIC_DEFAULT_ORG
898
CMD ["npm", "start"]

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
ECKO is a distributed blockchain data consortium for ecological resurvey datasets.
55
This repository holds the source code for a Node.js REST application that uses the Fabric Node.js SDK to communicate with the ECKO Blockchain.
66

7+
To run the application, you must first configure your environment variables. See the .env.example and docker-compose.yaml files for an example.
8+
The application connects to a Hyperledger Fabric blockchain, a PostgreSQL database, an email client and a single sign-on provider.
9+
Run `npm run start` (production) or `npm run start:dev` (development) to start the application, or use docker-compose to create an image.
10+
711
This project is created by the University of Bergen (UiB), Norway, and is available under the Apache License, Version 2.0 (Apache-2.0).
812

913
Read more about ECKO: <https://ecko.uib.no>

data/config/certs/.keep

Whitespace-only changes.
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: eckonetwork
2+
version: 1.0.0
3+
client:
4+
organization: eckochain.example.com
5+
connection:
6+
timeout:
7+
peer:
8+
endorser: "300"
9+
orderer: "300"
10+
channels:
11+
eckochannel:
12+
orderers:
13+
- orderer0.orderers.eckochain.example.com
14+
- orderer1.orderers.eckochain.example.com
15+
- orderer2.orderers.eckochain.example.com
16+
peers:
17+
peer0.eckochain.example.com:
18+
endorsingPeer: true
19+
chaincodeQuery: true
20+
ledgerQuery: true
21+
eventSource: true
22+
discover: true
23+
organizations:
24+
eckochain.example.com:
25+
mspid: eckochain.example.com-MSP
26+
peers:
27+
- peer0.eckochain.example.com
28+
certificateAuthorities:
29+
- ca.eckochain.example.com
30+
orderers:
31+
orderer0.orderers.eckochain.example.com:
32+
url: grpcs://orderer0.orderers.eckochain.example.com:7050
33+
grpcOptions:
34+
ssl-target-name-override: orderer0.orderers.eckochain.example.com
35+
tlsCACerts:
36+
path: /usr/data/config/certs/tlsca.orderers.eckochain.example.com-cert.crt
37+
orderer1.orderers.eckochain.example.com:
38+
url: grpcs://orderer1.orderers.eckochain.example.com:8050
39+
grpcOptions:
40+
ssl-target-name-override: orderer1.orderers.eckochain.example.com
41+
tlsCACerts:
42+
path: /usr/data/config/certs/tlsca.orderers.eckochain.example.com-cert.crt
43+
orderer2.orderers.eckochain.example.com:
44+
url: grpcs://orderer2.orderers.eckochain.example.com:9050
45+
grpcOptions:
46+
ssl-target-name-override: orderer2.orderers.eckochain.example.com
47+
tlsCACerts:
48+
path: /usr/data/config/certs/tlsca.orderers.eckochain.example.com-cert.crt
49+
peers:
50+
peer0.eckochain.example.com:
51+
url: grpcs://peer0.eckochain.example.com:7051
52+
grpcOptions:
53+
ssl-target-name-override: peer0.eckochain.example.com
54+
tlsCACerts:
55+
path: /usr/data/config/certs/tlsca.eckochain.example.com-cert.crt
56+
certificateAuthorities:
57+
ca.eckochain.example.com:
58+
url: https://ca.eckochain.example.com:7054
59+
caName: ca.eckochain.example.com
60+
httpOptions:
61+
verify: false
62+
tlsCACerts:
63+
path: /usr/data/config/certs/tlsca.eckochain.example.com-cert.crt
64+
registrar:
65+
- enrollId: encaadmin
66+
enrollSecret: secret

data/datasets/.keep

Whitespace-only changes.

data/media/.keep

Whitespace-only changes.

data/public/media/.keep

Whitespace-only changes.

0 commit comments

Comments
 (0)