Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preprod #12

Merged
merged 3 commits into from
Jun 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ executors:
environment:
PROJECT_ROOT_FOLDER: ~/project
docker:
- image: cimg/go:1.17-node
- image: cimg/go:1.20
docker-image-golang-dependencies:
environment:
PROJECT_ROOT_FOLDER: ~/project
docker:
- image: cimg/go:1.17-node
- image: cimg/go:1.20
- image: proxeus/node-crypto-forex-rates
- image: proxeus/document-service
- image: proxeus/mongo-dev-cluster
Expand All @@ -25,7 +25,7 @@ executors:
jobs:
build-ui:
docker:
- image: cimg/go:1.17-node
- image: cimg/node:16.20
steps:
- checkout
- restore_cache:
Expand Down Expand Up @@ -151,17 +151,17 @@ jobs:
- restore_cache:
keys:
- go-mod-v2-{{ checksum "go.sum" }}
- run: curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
- run: curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
- run:
name: Node.js
command: curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
- run:
name: Yarn
command: curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
- run: echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
- run: sudo apt-get update && sudo apt-get install yarn
- run: sudo apt-get install libgtk2.0-0
- run: sudo apt-get install libnotify-dev
- run: sudo apt-get install libgconf-2-4
- run: sudo apt-get install libnss3
- run: sudo apt-get install libxss1
- run: sudo apt-get install libasound2
- run: sudo apt-get install xvfb
- run:
name: Cypress dependencies
command: sudo apt-get install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb
- run:
name: Test UI
command: make init test-ui
Expand Down
10 changes: 5 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
SHELL:= /bin/bash
DEBUG_FLAG?=false
GO_VERSION=1.16
GO_VERSION=1.20

ifeq ($(DEBUG), "true")
BINDATA_OPTS="-debug"
Expand Down Expand Up @@ -78,12 +78,12 @@ all: ui server
.PHONY: init
init:
@for d in $(dependencies); do (echo "Checking $$d is installed... " && which $$d ) || ( echo "Please install $$d before continuing" && exit 1 ); done
go get -u golang.org/x/tools/...
go get -u github.com/wadey/gocovmerge
go get -u github.com/go-bindata/go-bindata/v3/...
go install golang.org/x/tools/cmd/goimports
@go version
go install github.com/go-bindata/go-bindata/...
go install github.com/golang/mock/mockgen
go install github.com/wadey/gocovmerge
go install golang.org/x/tools/...
go install golang.org/x/tools/cmd/goimports
go install golang.org/x/tools/cmd/godoc

.PHONY: update
Expand Down
34 changes: 16 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
![](docs/_media/logo.png)

# Proxeus Core
----------------
--------------

Proxeus combines a powerful automation tool with a form builder, document generator and blockchain connection - enabling you to digitize, secure, and tap into the value of data flows. Access the full source code of available modules and extensions [@ProxeusApp](https://github.com/ProxeusApp).

Expand All @@ -13,41 +13,37 @@ Get help to make the most of the platform in the **[User Handbook](https://githu

To learn more about Smart Contracts using Solidity, see the documentation in the [proxeus-contract](https://github.com/ProxeusApp/proxeus-contract).

For detailed information about payment setup (currently unsupported), check the [XES-Payment](docs/xes-payment.md) project.
For detailed information about token setup, check the [XES-Payment](docs/xes-payment.md) project. Software architecture and other details are in the [Developer Manual](https://doc.proxeus.com).

## Installation

Proxeus is primarily a Web application, intended for access with a web browser. The [Proxeus Association](https://proxeus.org) maintains a demo instances you can use to test the product, and can recommend a service provider to help you or your business get set up. There is also a prototype [desktop application](https://github.com/ProxeusApp/storage-app/blob/master/docs/overview.md).

In addition to the developer guidelines below, several "one-click" deployment configurations are available for select cloud platforms:

- [Docker Compose](docker-compose.yml)
- [Docker Compose](docs/docker.md)
- [Linode StackScript](deploy/linode/README.md)
- [DigitalOcean Droplet](deploy/digitalocean/README.md)

Please [contact us](https://github.com/ProxeusApp/community/discussions/3) if you are interested in seeing additional providers on this list.
Join the [Discussions](https://github.com/ProxeusApp/community/discussions/3) if you are interested in seeing additional providers on this list.

## Development
If you wish to build the project form the source code, follow the instructions in [Build all](docs/build_all.md).

Please read the [Developer Manual](https://doc.proxeus.com) to learn more about the Proxeus platform.

If you wish to build the project form the source code, follow the instructions in [Build all](docs/build_all.md)

### Installation using Docker

The quickest way to set up Proxeus for development is to use Docker, and the `docker-compose` tool.
### Infura and SparkPost

1. [Install Docker Engine](https://docs.docker.com/install/)
2. [Install docker-compose](https://docs.docker.com/compose/install/)
The Proxeus platform currently depends on [Infura](https://infura.io/) for blockchain services. Supported chains include:

See further deployment instructions in [docs/docker](docs/docker.md) to set up your server using Docker.
- ethereum: sepolia
- ethereum: goerli
- ethereum: mainnet
- polygon: mumbai
- polygon: mainnet

### Infura and SparkPost
Create an account to get an API Keys. These keys need to be added to corresponding environment variables, or entered when deploying a "one-click" instance.

The Proxeus platform currently depends on [Infura](https://infura.io/) and [SparkPost](https://www.sparkpost.com/)
for Ethereum and email integration respectively. Create an account on those platforms
to get API Keys. These keys need to be added to corresponding environment variables, or
entered when deploying a "one-click" instance.
Proxeus works best with [SparkPost](https://www.sparkpost.com/) for email integration.

Please note that the domain you set up on SparkPost MUST match the **reply-to** e-mail address that you configure in the next step in order to create accounts and receive e-mails on your instance.

Expand All @@ -70,6 +66,7 @@ Licensed under the GNU GENERAL PUBLIC LICENSE. You may read a copy of the [Licen

## Acknowledgements


Like so many projects, this effort has roots in many places. The list can be found in [ACKNOWLEDGEMENTS](ACKNOWLEDGEMENTS).

## Supported Chains
Expand All @@ -79,3 +76,4 @@ Like so many projects, this effort has roots in many places. The list can be fou
- mainnet
- polygon-mumbai
- polygon

2 changes: 1 addition & 1 deletion deploy/digitalocean/deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ cd /srv

cat <<END >.env
PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS=0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71
PROXEUS_ENCRYPTION_SECRET_KEY=`dd bs=32 count=1 if="/dev/urandom" | base64 | tr +/ _.`
PROXEUS_ENCRYPTION_SECRET_KEY=`hexdump -n 16 -e '4/4 "%08X"' /dev/random`
PROXEUS_DATA_DIR=./data
PROXEUS_ALLOW_HTTP=true
PROXEUS_INFURA_API_KEY=$INFURA
Expand Down
6 changes: 3 additions & 3 deletions deploy/linode/stackscript.sh
Original file line number Diff line number Diff line change
Expand Up @@ -97,13 +97,13 @@ ufw logging off
## ----------------------------------------------
## Install & configure proxeus

log "Installing Proxeus"
log "Installing Proxeus with demo smart contract"
mkdir -p /srv
cd /srv

cat <<END >.env
PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS=0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71
PROXEUS_ENCRYPTION_SECRET_KEY=`dd bs=32 count=1 if="/dev/urandom" | base64 | tr +/ _.`
PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS=0x66FF4FBF80D4a3C85a54974446309a2858221689
PROXEUS_ENCRYPTION_SECRET_KEY=`hexdump -n 16 -e '4/4 "%08X"' /dev/random`
PROXEUS_DATA_DIR=./data
PROXEUS_ALLOW_HTTP=true
PROXEUS_INFURA_API_KEY=$INFURA
Expand Down
2 changes: 1 addition & 1 deletion docs/build_all.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Before building Proxeus, make sure to set all [required environment variables](.
export PROXEUS_DATA_DIR=./data
export PROXEUS_INFURA_API_KEY=<Your Infura project ID>
export PROXEUS_SPARKPOST_API_KEY=<Your SparkPost API Key>
export PROXEUS_ENCRYPTION_SECRET_KEY=<A long random string>
export PROXEUS_ENCRYPTION_SECRET_KEY=<A 32-character random string>
export PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS=0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71
export PROXEUS_ALLOW_HTTP=true
export PROXEUS_PLATFORM_DOMAIN=localhost
Expand Down
16 changes: 13 additions & 3 deletions docs/configure.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,33 +13,43 @@ https://dev-ds.proxeus.com/
## Infura API Key
Generate a [infura API Key](https://infura.io)

## Blockchain contract address
## Blockchain File Storage contract address
### Sepolia
```
0x9bc518Fd070BE3DBB07399261688015744a7FB02
```
[Verify on Etherscan](https://sepolia.etherscan.io/address/0x9bc518Fd070BE3DBB07399261688015744a7FB02#code)

### Goerli
```
0x9bc518Fd070BE3DBB07399261688015744a7FB02
0x66FF4FBF80D4a3C85a54974446309a2858221689
```
[Verify on Etherscan](https://goerli.etherscan.io/address/0x66FF4FBF80D4a3C85a54974446309a2858221689#code)


### Mainnet
```
0xf63e471d8cbc57517c37c39c35381a385628e012
```
[Verify on Etherscan](https://etherscan.io/address/0xf63e471d8cbc57517c37c39c35381a385628e012)

### Polygon-mumbai
```
0x00119d8C02bbC4c1231D054BB2813792B4411Ed5
```
[Verify on Etherscan](https://mumbai.polygonscan.com/address/0x00119d8C02bbC4c1231D054BB2813792B4411Ed5)


### Polygon
```
0x60970BeFda93464A105DD21Dc6a30B69C5B5c6e4
```
[Verify on Etherscan](https://polygonscan.com/address/0x60970BeFda93464A105DD21Dc6a30B69C5B5c6e4)



Alternatively: deploy your own smart contract from [ProxeusFS.sol](https://github.com/ProxeusApp/storage-app/blob/master/spp/eth/solidity/ProxeusFS.sol)

(alternatively deploy own smart contract from ProxeusFS.sol)

## Email from
```
Expand Down
6 changes: 3 additions & 3 deletions docs/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ Environment:
|Name | Default Value | Description |
|---------------|-----------------------|------------------------------|
|PROXEUS_DATA_DIR| `./data` | Path to the directory to use a data store.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string*|Use a hard key to ensure your database is safe.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string of 32 characters*|Use a hard key to ensure your database is safe.|
|PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS|*0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71*|The address of the Proxeus contract.|
|PROXEUS_INFURA_API_KEY|*Your Infura API Key*|An Infura API Key for Ethereum integration.|
|PROXEUS_SPARKPOST_API_KEY|*Your SpartPost Key*|A SparkPost API Key for email integration.|
Expand Down Expand Up @@ -132,7 +132,7 @@ Environment:
|Name | Default Value | Description |
|---------------|-----------------------|------------------------------|
|PROXEUS_DATA_DIR| `./data` | Path to the directory to use a data store.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string*|Use a hard key to ensure your database is safe.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string of 32 characters*|Use a hard key to ensure your database is safe.|
|PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS|*0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71*|The address of the Proxeus contract.|
|PROXEUS_INFURA_API_KEY|*Your Infura API Key*|An Infura API Key for Ethereum integration.|
|PROXEUS_SPARKPOST_API_KEY|*Your SpartPost Key*|A SparkPost API Key for email integration.|
Expand Down Expand Up @@ -272,7 +272,7 @@ Environment:
|Name | Default Value | Description |
|---------------|-----------------------|------------------------------|
|PROXEUS_DATA_DIR| `./data` | Path to the directory to use a data store.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string*|Use a hard key to ensure your database is safe.|
|PROXEUS_ENCRYPTION_SECRET_KEY|*A random string of 32 characters*|Use a hard key to ensure your database is safe.|
|PROXEUS_BLOCKCHAIN_CONTRACT_ADDRESS|*0x1d3e5c81bf4bc60d41a8fbbb3d1bae6f03a75f71*|The address of the Proxeus contract.|
|PROXEUS_INFURA_API_KEY|*Your Infura API Key*|An Infura API Key for Ethereum integration.|
|PROXEUS_SPARKPOST_API_KEY|*Your SpartPost Key*|A SparkPost API Key for email integration.|
Expand Down
34 changes: 32 additions & 2 deletions docs/quickstart.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Quick Start

**By installing and using the Proxeus software you agree with the terms of the [Proxeus License Agreement](license.md).**
A brief installation guide. Find more details and explanation of the configuration settings in [configure.md](configure.md).

**By installing and using the Proxeus software you agree with the terms of the [Proxeus License Agreement](LICENSE).**

## Source Code

Expand All @@ -19,11 +21,39 @@ Please create an account on those platform and get an API Keys.

## Proxeus Demo Ethereum Smart Contract

For your convenience, a demo smart contract is deployed on the Sepolia network at the following address:
For your convenience, a demo smart contract is deployed on several networks at the following address:

### Sepolia
```
0x9bc518Fd070BE3DBB07399261688015744a7FB02
```
[Verify on Etherscan](https://sepolia.etherscan.io/address/0x9bc518Fd070BE3DBB07399261688015744a7FB02#code)

### Goerli
```
0x66FF4FBF80D4a3C85a54974446309a2858221689
```
[Verify on Etherscan](https://goerli.etherscan.io/address/0x66FF4FBF80D4a3C85a54974446309a2858221689#code)


### Mainnet
```
0xf63e471d8cbc57517c37c39c35381a385628e012
```
[Verify on Etherscan](https://etherscan.io/address/0xf63e471d8cbc57517c37c39c35381a385628e012)

### Polygon-mumbai
```
0x00119d8C02bbC4c1231D054BB2813792B4411Ed5
```
[Verify on Etherscan](https://mumbai.polygonscan.com/address/0x00119d8C02bbC4c1231D054BB2813792B4411Ed5)


### Polygon
```
0x60970BeFda93464A105DD21Dc6a30B69C5B5c6e4
```
[Verify on Etherscan](https://polygonscan.com/address/0x60970BeFda93464A105DD21Dc6a30B69C5B5c6e4)

## Create a docker-compose.yml file

Expand Down
Loading