22 Commits

Author SHA1 Message Date
Zachary Bowen
8a7650c13a Generalize election management commands (#2515)
* Problem: `ValidatorElection` and `MigrationElection` need to inherit from a common `Election` class

Solution: Factored the common logic out of `ValidatorElection` and moved it to `Election` parent class

* Problem: Adding base58 as a requirement seems to break the build...

Solution: Reverting the changes

* Problem: Responding to a suggestion for improved method naming

Solution: Refactored `get_result_by_election_id` to `get_election_result_by_id`

* Problem: No need to store different types of elections in their own tables

Solution: Remove `DB_TABLE` property from `Election` class

* Revert "Problem: No need to store different types of elections in their own tables"

This reverts commit db45374d3c690429d18a25bcc319f8056c016500.

* Problem: Missed a method in `Bigchain` class when updating the naming for an election method

Solution: Finished the refactoring

* Problem: Need a table to store data for all elections

Solution: Created the `elections` table with secondary_index `election_id`

* Problem: `Election` class needs to be updated to store concluded elections in the `elections` table

Solution: Updated the class to use the new table

* Problem: `UpsertValidatorVote` can be generalized to just be `Vote`

Solution: Renamed, refactored and moved the `Vote` class to tie in with the more general `Election` base class

* Problem: Error in docstring return signature

Solution: Fixed the docstring

* Problem: Hardcoded reference to the `VOTE_TYPE` in `Election` base class

Solution: Pointed the reference to the class variable

* Problem: Schema still refers to `ValidatorElectionVote` instead of `Vote`

Solution:  Renamed `TX_SCHEMA_VALIDATOR_ELECTION_VOTE` as `TX_SCHEMA_VOTE`

* Problem: `Election` class variable `ELECTION_TYPE` is overly specific

Solution: Renamed `ELECTION_TYPE` to `OPERATION`

* Problem: Command line options for `upsert-validator` can be generalized to manage any type of election

Solution: Refactored the CLI to manage generalized elections

* Problem: Default for `show_election` not implemented for `Election` class

Solution: Create a default method that work if all fields in the 'asset[data]' can be displayed without additional formatting

* Problem: Multiple small issues with style etc.

Solution: Addressed comments from PR

* Problem: `Election` class variable to `VOTE_TYPE` unnecessary

Solution: Removed the variable and hardcoded everything to use the `Vote` class

* Problem: Minor style issues with PR

Solution: Addressing comments

* Problem: Changes to format for validator keys broke some tests

Solution: Aligned the tests to reflect the changed key format

* Problem: `election show` command displaying the base56 public key

Solution: Cast any public key to base64

* Problem: `election_parser` help message still refers to upsert-validator

Solution: Updated the help message
2018-09-12 13:41:16 +02:00
Zachary Bowen
7a0b474d11 Problem: Users want to know upsert-validator election status.
Solution: Introduce the `upsert-validator show` command. Soon to be re-implemented via storing and querying identifiers of concluded elections.
2018-08-30 10:47:37 +02:00
Vanshdeep Singh
8e97c753eb Problem: upsert-validator 'approve' command does not transfer vote to election public key (#2480)
Solution: Transfer vote to the election public key; generalize implemenation to handle election txn type

* Problem: Upsert valdiator 'new' doesn't accept public in base64 format

Solution: Tendermint stores all keys in base64 format so it would suitable to
abandon base58 encoding in favour of base64 encoding

* Problem: Not test for invalid execution of upsert-validator 'new'

Solution: Write tests to when invalid power or private key path has been supplied

* Problem: Exceptions are not informational when executing upsert-validator

Solution: generate error logs or print statement indicating success
2018-08-28 14:21:59 +02:00
codegeschrei
d31ab9fb40 Problem: There is no way to vote for an election (#2458)
* Problem: `run_upsert_validator_approve` was getting the voting power in a convoluted way

Solution: Changed it to get the voting power from the election outputs

* Problem: `run_upsert_validator_approve` casts votes for *all* voters, not just the user calling the command

Solution: Filter vote txs by the users public key

* Problem: Docs needed a more specific description of how to input the path to the private-key file

Solution: Changed the wording a bit
2018-08-24 09:52:00 +02:00
Troy McConaghy
abdd23f5a6 Problem: Source files contain no license info (#2455)
* Problem: Source files contain no license info

Solution: Add comments with SPDX license info to source files

* Python 3 files don't need # -*- coding: utf-8 -*-
2018-08-16 12:31:32 +02:00
Zachary Bowen
3760824261 Create dynamic upsert validator commands (#2446)
* Problem: Need a method to initiate a new upsert-validator election

Solution: Added subcommand `new` to `upsert_validator`

* Problem: Changes to upsert-validator needed to be reflected in the docs

Solution: Wrote a section for `upsert-validator new`
2018-08-09 17:29:21 +02:00
Dan Acristinii
ab41b463d8 fixed validator curl port (#2447) 2018-08-08 15:45:08 +02:00
Vanshdeep Singh
67c4ce964a Problem: Upsert validator not marked experimental (#2356)
Solution: Update documentation to mark it experimental
2018-06-20 10:15:14 +02:00
Troy McConaghy
c8682a1d89 Problem: bigchaindb upsert-validator labelled "insecure" (#2180)
Solution: Remove the "insecure" label from the docs on `bigchaindb upsert-validator`
2018-04-05 17:47:11 +02:00
vrde
f157096699 Problem: No reason to check the BEP (+typo) (#2144)
Solution: Say why there is a link to the BEP, and fix a typo.
2018-03-23 14:39:15 +01:00
Vanshdeep Singh
ef26220c7f Problem: Docs for BEP#3 implementation not updated (#2123)
* Problem: Docs for BEP#3 implementation not updated

Solutions: Update docs for #2070 and #2106

* Problem: 'Validator update' docs language not clear

Solution: Re-write the documentation which explains when validators are updated

* Problem: Typos and BEP reference missing

Solution: Fix typos and add BEP reference
2018-03-21 09:23:08 +01:00
Troy McConaghy
86e7b2a881 Some minor copy-editing 2018-02-25 18:05:18 +01:00
Ahmed Muawia Khan
8e8e328205 Migrate CLI documentation
- Remove documentation for CLI commands that are not needed with
  Tendermint integration.
2018-02-23 14:53:28 +01:00
kansi
220465f701 Added "--no-init" flag for "bigchaindb start" command 2017-11-07 14:55:05 +05:30
kansi
cf19a8cb93 Updated docs 2017-10-24 18:29:31 +05:30
Sylvain Bellemare
3a81270101 Add link to configuration file settings 2017-03-21 16:17:32 +01:00
Sylvain Bellemare
4338637983 Add docs for allowed log levels for cmd line 2017-03-21 16:17:32 +01:00
Sylvain Bellemare
d867983a89 Document cmd line option for the log level 2017-03-21 16:17:32 +01:00
Troy McConaghy
042133faf8 removed docs about 'bigchaindb load' command 2017-03-11 14:00:01 +01:00
Troy McConaghy
105d0172da Minor fixes to the bigchaindb CLI docs 2017-02-03 11:31:24 +01:00
Rodolphe Marques
69068fc919 Document how to run BigchainDB with MongoDB (#1116)
* Document changes in the configure command.

Document new add/remove replicas commands.

* updated quickstart with mongodb instructions

* Docs on how to setup mongodb dev node with and without docker.

Update replSet option in docker-compose

* Fixed typo.

More explicit on how to run the tests.

* Fixed typo in mongodb docker instructions.

More explicit about requiring mongodb 3.4+
2017-01-31 13:53:36 +01:00
troymc
cd2fd494ac Moved docs directory to docs/server, except README.md 2016-10-27 14:09:24 +02:00