Massively scalable musical source comparator.
See the documentation for detailed documentation.
Install the package through pip (recommended to do in a virtual environment):
$ python3 -m pip install roseingrave
The package will be added as a top-level command:
$ roseingrave --help
Create a folder to store all your input/output files. In this folder, place your OAuth credentials file (see Credentials) and all required and optional input files.
See the documentation for customizing filepaths and the expected input file formats.
The package interacts with Google Sheets through the
gspread
package.
You can enable an OAuth Client to create, access, and edit spreadsheets with
your email.
To enable the OAuth Client, follow these steps:
- Go to the Google Developers Console.
- Log in with the email account you want to use with the OAuth Client. All created spreadsheets will be owned by this account in Google Drive.
- Create a new project.
- Go to the API Library.
- In the search bar, search for "Google Drive API", select it, and enable it.
- Go back to the API library. In the search bar, search for "Google Sheets API", select it, and enable it.
- Go to the OAuth Consent Screen tab.
- If prompted, select "External" for the User Type.
- On the "App Information" page, enter an app name. Select your email address for the support email. Scroll down to the bottom and enter your email address for the developer contact information. Click "Save and Continue".
- On the "Scopes" page, click "Save and Continue".
- On the "Test Users" page, add your email address as a user. Click "Save and Continue".
- On the summary page, scroll to the bottom and click "Back to Dashboard".
- Go to the Credentials tab.
- At the top of the page, select "+ Create credentials" > "OAuth client ID".
- For the application type, select "Desktop app". Name your credentials. Click "Create". Click "Ok" at the popup.
- In the table labeled "OAuth 2.0 Client IDs", locate the credentials you just created. Click the download button at the end of the row.
- Rename the file to
credentials.json
and place it in the root directory of where you'll be running the commands. (You can customize this in the settings file).
If you've never authorized the app or if your authorization has expired, you'll be given a link in the console for you to visit in order to refresh or create an authorization token. Go to the url, select your email, click "Continue", allow access to your Drive files and Sheets spreadsheets, and click "Continue". This should authenticate you, and the command should continue running.
Once the authorization is successful, the authorized_user.json
file will be
created in the same directory as "credentials"
.
Create the piece definitions and volunteer definitions files as explained in the documentation. If desired, create the settings file and/or the template file. Save all the files in the proper locations as defined by the default settings file or by your own settings file.
Based on your definition files, create the volunteer spreadsheets:
$ roseingrave create_sheet
After volunteers have filled out their spreadsheets, export the data:
$ roseingrave volunteer_summary
Extract the data for each piece:
$ roseingrave piece_summary
Compile all the piece data into the summary file:
$ roseingrave compile_pieces
Create the summary spreadsheet with the data from the summary file:
$ roseingrave import_summary
Fill out the summary columns as appropriate, then export the summary spreadsheet into the summary file:
$ roseingrave export_summary
See the commands documentation for all commands and their arguments and options.