-
-
Notifications
You must be signed in to change notification settings - Fork 42
Setup steps
- steps in project readme https://github.com/code4romania/monitorizare-vot
DB credentials
"ConnectionStrings": {
"DefaultConnection": "ADD_DB_CONNECTION_STRING_HERE"
},
Refer to connectionstrings.com for standards; make sure it's the same for the domain project Hashing for passwords
"HashOptions": {
"Salt": "ADD_SALT",
"ServiceType": ADD "Hash" or "ClearText"
},
make sure you have the same one in the tests project when generating the hashes ;) Mobile security
- add string for incorrect login error displayed on mobile devices
- set
LockDevice
= should users only be allowed to login from a single device?
"MobileSecurityOptions": {
"InvalidCredentialsErrorMessage": "{ \"error\": \"ADD_ERROR_TEXT_HERE\" }",
"LockDevice": ADD true/false
},
Setup for push notifications
"FirebaseServiceOptions": {
"ServerKey": "ADD_URL_TO_FIREBASE_CONFIG_JSON"
},
Setup for file storage (needed for loading pictures and video to notes)
"FileServiceOptions": {
"Type": "BlobService"
},
"BlobStorageOptions": {
"AccountName": "ADD_HERE",
"AccountKey": "ADD_HERE",
"Container": "ADD_CONTAINER_NAME",
"UseHttps": true
}
these are the details of your azure blob storage - you can retrieve these from the Azure portal quite easy: navigate to the storage account -> settings section -> Access Keys. Make sure you have a container set up for that storage Set Application Cache
"ApplicationCacheOptions": {
"Implementation": "{`NoCache`, `MemoryDistributedCache` or `RedisCache`}",
"Hours": 0,
"Minutes": 30,
"Seconds": 0
}
For RedisCache RedisCacheOptions
should be present and properly configured
Set Redis Cache
"RedisCacheOptions": {
"Configuration": "",
"InstanceName": ""
},
in the domain:
{
"ConnectionStrings": {
"DefaultConnection": "{sqlServerConnectionString}" // refer to connectionstrings.com for standards;
}
}
in the tests:
{
"HashOptions": {
"Salt": "{salt}" // make sure you have the same one in the api project when generating the hashes ;)
}
}
Build the VotingIrregularities.Tests
Under the build output folder (probably: monitorizare-vot\private-api\app\test\VotingIrregularities.Tests\bin\Debug\netcoreapp2.1) create conturi.txt
file with the format
{phoneNumber}\t{desiredPin}
on each line. (yes, these are tab separated values, you can export an excel file with that format)
Comment (or remove) the Skip
handle from the Fact
attribute in the HashTests.cs\SetPasswords test.
The result of the test should be another file called conturi-cu-parole.txt
that will also contain the hashes of those PINs as another column.
Reminder: make sure you have the same Salt
configured in the appsettings.json file in the tests and the api.
- add master admin ngo - with the organiser flag set to true -> see info here for generating passwords https://github.com/code4romania/monitorizare-vot/blob/develop/docs/GettingStarted.md
- add regular ngo accounts
- import observers - use the
POST /api/v1/observer/import
endpoint to import a tab delimited file with the list of observers with the folowing columns: phone number, password, name - add counties list
- update counties list to set number of polling stations per county from official sources: https://www.roaep.ro/management-electoral/geografie-electorala/registrul-sectiilor-de-votare/
- import polling station from official sources: https://www.roaep.ro/management-electoral/geografie-electorala/registrul-sectiilor-de-votare/
- add forms using the web app
- check & update remote config values on Firebase
- see google play deploy steps https://github.com/code4romania/mon-vot-android-kotlin/wiki/Google-Play-Deploy-Steps
- see apple store deploy steps https://github.com/code4romania/monitorizare-vot-ios
- Rest API - used both for the mobile apps and the web app
- Web app
- Android app
- iOS app