15. Administration and Setup

Four key products in Panmo Confab™ family:

  1. Confab Process Flow + DOE

  2. Confab LIMS + Scheduler

  3. Confab Wafer Tracker / Project Cost

  4. Confab Vendor Management

Depending on the license you have purchased you can have access to one or more, or all, of the products.

15.1. Bringup Instructions

Initial setup:

python3 manage.py migrate
python3 manage.py migrate --run-syncdb
python3 manage.py loaddata ./data/*.yaml
python3 manage.py createsuperuser
python manage.py createcachetable

Migrate applications:

python3 manage.py makemigrations confab
python3 manage.py makemigrations feedback
python3 manage.py migrate

Start service:

python3 manage.py runserver

15.2. Using the Admin interface

  • Create a group called “team leads”

  • Under confab app for teamleads add the above group in the drop down

15.3. For vendor management

  • Create ‘Client’ and ‘Vendor’ groups

  • Need to assign privileges for groups

  • Client users should be assigned to suitable groups

  • Update Team Leads to use a group

15.4. Security

  • Set DJANGO_DEBUG=False in environment before deployment.

15.5. API

APIs for confab and feedback namespaces are /confab/api and feedback/api, respectively. Appending a model name i.e. confab/api/users will point you to the API for that model. In general:

[namespace]/api/[model]/[instance primary key]/

Available models:

  • feedback
    • feedback

  • confab
    • users

    • linecontrolchart

    • multilinecontrolchart

    • ternarychart

    • scatterchart

    • stripchart

    • variabilitychart

    • histogramchart

    • boxchart

    • heatmapchart

    • treemapchart

    • doe

    Plotly charts are not fields in chart models, so you won’t see them in instance JSON content. To retrieve a ploty chart as JSON request the resource at /confab/api/[chart model]/[instance primary key]/chart

    DOE methods are exposed through /confab/api/doe/[instance primary key]/[method name (with ‘-’ instead of ‘_’)]

15.6. Testing

$ python3 manage.py migrate --settings=mysite.settings.integtest
$ python3 manage.py migrate --run-syncdb --settings=mysite.settings.integtest
$ python3 manage.py migrate test --settings=mysite.settings.integtest

These commands will setup a SQLite database on-disk and run the integration tests for CONFAB. This ensures, once wider coverage is present, the absence of regressions during development.

15.7. Assign Team Leads

In admin portal > confab > team leads > create new
  • create new linked group (with any name)

  • create the team leads object

  • add team leads to the group just created

15.8. Check Actions

Configuring Slack and Email Notification

In the .env following variables needs to be added to get the Slack and Email Notification

  • SLACK_TOKEN - Provide the Slack Authorization Token for the Workspace

  • SLACK_CHANNEL - Default Slack channel to receive Notification if there is no any recipients provided

  • EMAIL_HOST_USER - This is a registered/approved user email from the SES console

  • EMAIL_DOMAIN - In case of unavailability of email in the user profile, using the first name and this variable during the run-time email will be created.

  • EMAIL_SUBJECT_DOE_CREATION - A default Subject of an email when DOE is created

  • EMAIL_SUBJECT_DOE_ACCEPTANCE - A default Subject of an email when DOE is accepted

15.9. Client Site Setup

You can configure the site for specific client names, URL links etc. by setting the variables,

15.10. Re-CAPTCHA Setup

To enable Google ReCaptcha v2 you have to setup ENABLE_RECAPTCHA environment variable to True and provide the following ReCaptcha v2 public and private keys in these variables, RECAPTCHA_PUBLIC_KEY, and RECAPTCHA_PRIVATE_KEY

15.11. Redis Scheduling

If we set REDIS_FLOW_NOTIFICATION_ENABLED in ENV to one if the following, ` [1, 0, true, false, yes, no] ` then the email scheduling or slack notifications will be managed by the Redis queue

15.12. Project Cost and Budgeting Tracker

Create new app confabprojectcost to associate a budgeting flow for client#1 where - Projects have monthly budgets assigned to them and approvers and project managers. - Various processess can be attached to the projects and in a said month the process - Engineers will be requesting credits against the monthly budget for said process. - Approver can have running tally of the process budget, project budget and monthly spend using a dashboard views. This project is being scoped. It will be restricted to client#1 for now.

15.13. Confab LIMS and Scheduler Setup

Set the environment variable FEATURE_CONFAB_LIMS=True and migrate the app using

Run the following command to install tables for confablims.

Further you need to setup user-groups in the Django Groups feature for each site for confablims. This should allow creating Category, then create Items in each category; following this we may enable transactions of items between one site to the other, etc.

15.14. User Administration

These commands are available as part of the confabaccount module:

15.15. Welcome New Users

welcome users in past 1 week (7 days)

python3  manage.py sendmail_welcome_users --days 7

15.16. Invite Users

python3 manage.py sendmail_invite_users {Username1 Email1}+