Navigation Menu

Click the "+" to see inside a chapter or use the search to the right.

.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

 Upgrade to another version.

 Software upgrade process home page.
 

 

Icon
  • It is mandatory to upgrade to 7.1704 from any previous version of ExamDeveloper before upgrading to any future version.
  • The following instructions require Microsoft PowerShell to be installed. If you do not have it installed, you can refer to the following URL to download and install it: https://www.microsoft.com/en-us/download/details.aspx?id=40855
  • It is important to ensure that all the values in the config files such as service name, URLs, username, and password are case-sensitive. ExamDeveloper may not run as expected if care is not taken to ensure that case sensitivity is maintained.

 

  1. Copy the self-hosted.properties file from the <SVNFolder> folder to a folder such as C:\EnvProp\, open it with a suitable text editor such as Notepad, and modify the following values:
     
    • LOG_ENV_SUBDIR=prod
      Name of the environment to be used as a subdirectory for the log.
    • EDRS_OUTPUT_DIR=C:\ExamDeveloper\AppData\ExamDeveloper\Reports
      Copy over the value of the "outputDirectory" key from the EDRS appSettings.config.
    • DATA_ROOT=C:\ExamDeveloper\AppData\ExamDeveloper
      Copy over the value of the "DataRoot" key from the ExamDeveloper appSettings.config.
    • LICENSE_KEY=<<Insert the license key over here>>
    • Copy over the value of the "licensekey" key from the EDRS appSettings.config.
    • LICENSE_SERVER=https://examdevlicense.pearsonvue.com/Server/CheckLicense.aspx
      Copy over the value of the "licenseServer" key from the EDRS appSettings.config following the above example.
    • ENCRYPTION_KEY=!#$a54?3
    • WEB_ADMIN_USERNAME=edisupport
      This is the default admin username to log into ExamDeveloper.
    • WEB_ADMIN_PASSWORD=Dummy_ED-Admin_Password
      This is the default admin password to log into ExamDeveloper.
    • CONNECTION_STRING=Data Source=WIN-VSGF1NBSVPB;Initial Catalog=ExamDeveloper;Persist Security Info=True;User ID=ExamDev;Password=P@s$w0rd
      Copy over the value of the connection string from the ExamDeveloper connectionStrings.config following the above example.
    • SIMILARITY_CONNECTION_STRING=Data Source=WIN-VSGF1NBSVPB;Initial Catalog=Similarity;Persist Security Info=True;User ID=Similarity;Password=P@s$w0rd
      Copy over the value of the "similarity" connection string from the EDQSS connectionStrings.config following the above example.
    • HANGFIRE_CONNECTION_STRING=Data Source=WIN-VSGF1NBSVPB;Initial Catalog=Hangfire;Persist Security Info=True;User ID=Hangfire;Password=P@s$w0rd
      Copy over the value of the "hangfireConnectionString" connection string from the EDQSS connectionStrings.config following the above example.
    • MATH_EDITOR=wiris
      Copy over the value of the "MathEditor" key from the ExamDeveloper appSettings.config. The above example is when WIRIS editor is being used, else leave it blank.
    • WIRIS_IMAGE_SERVICE_HOST=www.WIRISServiceHost.com/WirisServerComponent
      Copy over the value of the "com.wiris.plugin.wirisimageservicehost" key from the WIRIS Web.config. The above example is when WIRIS editor is being used, else leave it blank.
    • WEBSITE_NAME=Default Web Site
      This is the name of the ExamDeveloper Application (Alias) as detailed here.
    • APPPOOL_NAME=ExamDeveloper
      This is the name of the ExamDeveloper Application pool as detailed here.
    • WEB_TARGET_DIR=C:\inetpub\wwwroot\ExamDeveloper
      This is the physical path of name of the ExamDeveloper application<ExtractedFolder>\Web\ (C:\inetpub\wwwroot\ExamDeveloper\ in our example) as detailed here.
    • MAIL_SENDER=examdeveloper@pearson.com
      Copy over the value of the "MailSender" key from the ExamDeveloper appSettings.config.
    • SUPPORT_EMAIL=examdeveloper@pearson.com
      Copy over the value of the "SupportEmail" key from the ExamDeveloper appSettings.config.
    • ENABLE_AUTOLOG_EMAIL=1
    • MAIL_SERVER=localhost
      Copy over the value of the "MailServer" key from the ExamDeveloper appSettings.config.
    • MAIL_PORT=25
      Copy over the value of the "MailPort" key from the ExamDeveloper appSettings.config.
    • MAIL_USERNAME=support
      Copy over the value of the "MailUsername" key from the ExamDeveloper appSettings.config.
    • MAIL_PASSWORD=mailP@s$
      Copy over the value of the "MailPassword" key from the ExamDeveloper appSettings.config.
    • WEB_DOMAIN=ED-URL
      This is the domain name of the server where ExamDeveloper is installed. Copy it from the URL for "ExamDev" in the EDRS httpClients.config.
    • APP_DOMAIN=app-URL
      This is the domain name of the server where all the microservices are installed. Copy it from the URL for "UserService" in the EDRS httpClients.config.
    • BASIC_AUTH_USER_NAME=examDeveloper
      Copy over the value of the "ApiAuthenticationUserName" key from the ExamDeveloper appSettings.config.
    • BASIC_AUTH_PASSWORD=Dummy_Password
      Copy over the value of the "ApiAuthenticationPassword" key from the ExamDeveloper appSettings.config.
    • RABBIT_ADDRESS=rabbitmq://RabbitMQ-URL/ExamDeveloper
    • Copy over the value of the "hostAddress" key from the ExamDeveloper massTransit.config.
    • RABBIT_USER=ExamDeveloper
      Copy over the value of the "username" key from the ExamDeveloper massTransit.config.
    • RABBIT_PASSWORD=Password
      Copy over the value of the "password" key from the ExamDeveloper massTransit.config.
    • REPORT_SERVER_URL=https://WIN-VSGF1NBSVPB:80/ReportServer
      Copy over the value of the "reportServerUrl" key from the ExamDeveloper appSettings.config.
    • REPORT_SERVER_DOMAIN_NAME=WIN-VSGF1NBSVPB
      Copy over the value of the "reportServerDomainName" key from the ExamDeveloper appSettings.config.
    • REPORT_SERVER_USER_NAME=edReporting
      Copy over the value of the "reportServerUserName" key from the ExamDeveloper appSettings.config.
    • REPORT_SERVER_PASSWORD=Password123
      Copy over the value of the "reportServerPassword" key from the ExamDeveloper appSettings.config.

  2. Create a standard user "servuser" to handle all the microservices.

    Icon

    Please ensure that the user "servuser" has write access to the EDRS output directory (EDRS_OUTPUT_DIR) and the directory storing the microservices log files (LOG_ROOT_DIR), which can be achieved as detailed over here.



  3. Open Windows PowerShell as Administrator.
  4. Bypass the PowerShell execution policy with the following command:
    set-executionpolicy bypass
     
  5. Store the credentials for "servuser" into a variable $c with the following command:
    $c = Get-Credentials

    This will prompt you for the credentials, which you must enter and click OK.
     
     
  6. Store the path to the self-hosted.properties file (C:\EnvProp\) into a variable $p with the following command:
    $p = "C:\EnvProp\environment.properties"
     
  7. For EDRS:
    1. Change the directory to the EDRS setup folder with the following command:
      cd "<ExtractedFolder>\EDRS\"

      Where, <ExtractedFolder>\EDRS\ is the location where the EDRS setup files have been extracted.
      Please make sure that the EDRS setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install EDRS.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  8. For EDSS:
    1. Change the directory to the EDSS setup folder with the following command:
      cd "<ExtractedFolder>\EDSS\"

      Where, <ExtractedFolder>\EDSS\ is the location where the EDSS setup files have been extracted.
      Please make sure that the EDSS setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install EDSS.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  9. For EDQSS:
    1. Change the directory to the EDQSS setup folder with the following command:
      cd "<ExtractedFolder>\EDQSS\"

      Where, <ExtractedFolder>\EDQSS\ is the location where the EDQSS setup files have been extracted.
      Please make sure that the EDQSS setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install EDQSS.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  10. For ExamService service:
    1. Change the directory to the ExamService service setup folder with the following command:
      cd "<ExtractedFolder>\Exam\"

      Where, <ExtractedFolder>\Exam\ is the location where the ExamService service setup files have been extracted.
      Please make sure that the ExamService service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install ExamService service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  11. For ItemBank service:
    1. Change the directory to the ItemBank service setup folder with the following command:
      cd "<ExtractedFolder>\ItemBank\"

      Where, <ExtractedFolder>\ItemBank\ is the location where the ItemBank service setup files have been extracted.
      Please make sure that the ItemBank service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install ItemBank service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  12. For User service:
    1. Change the directory to the User service setup folder with the following command:
      cd "<ExtractedFolder>\User\"

      Where, <ExtractedFolder>\User\ is the location where the User service setup files have been extracted.
      Please make sure that the User service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install User service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  13. For Project service:
    1. Change the directory to the Project service setup folder with the following command:
      cd "<ExtractedFolder>\Project\"

      Where, <ExtractedFolder>\Project\ is the location where the Project service setup files have been extracted.
      Please make sure that the Project service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install Project service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  14. For Assignment service:
    1. Change the directory to the Assignment service setup folder with the following command:
      cd "<ExtractedFolder>\Assignment\"

      Where, <ExtractedFolder>\Assignment\ is the location where the Assignment service setup files have been extracted.
      Please make sure that the Assignment service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install Assignment service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  15. For Notification service:
    1. Change the directory to the Notification service setup folder with the following command:
      cd "<ExtractedFolder>\Notification\"

      Where, <ExtractedFolder>\Notification\ is the location where the Notification service setup files have been extracted.
      Please make sure that the Notification service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install Notification service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"
       
  16. For Question service:
    1. Change the directory to the Question service setup folder with the following command:
      cd "<ExtractedFolder>\Question\"

      Where, <ExtractedFolder>\Question\ is the location where the Question service setup files have been extracted.
      Please make sure that the Question service setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install Question service.
      ./setup.ps1 -Credential $c -PropertiesFilePaths $p -Environment "prod"

  17. For ExamDeveloper application:
    1. Change the directory to the ExamDeveloper setup folder with the following command:
      cd "<ExtractedFolder>\Web\"

      Where, <ExtractedFolder>\Web\ is the location where the ExamDeveloper setup files have been extracted.
      Please make sure that the ExamDeveloper setup path is enclosed in quotes, especially if the path name contains spaces.
       
    2. Run the following command to install ExamDeveloper.
      ./setup.ps1 -PropertiesFilePaths $p -Environment "prod"
       
  18.  Run the Admin Password Encryption utility as detailed here.

    The admin user password needs to be encrypted in the interest of security and this is achieved with the MasterEncryption utility. Please follow the below steps to execute this utility.

    1. Extract the MasterEncryption.zip archive found in the <ExtractedFolder>\External\ folder to a folder such as C:\MasterEncryption\.
    2. Update the MasterEncryption.exe.config from C:\MasterEncryption\ for the values of the "connectionString" keys "Data Source", "Initial Catalog", "User ID", and "Password", which are related to the application's connection string from the ExamDeveloper connectionStrings.config as shown in step 9 of Configure ExamDeveloper.

       

    3. Open an Administrator command prompt (click Start, type "command" in the search box, right-click Command Prompt in the search results that appear, and click Run as administrator from the context menu), navigate to C:\MasterEncryption\, and run the following command:

      MasterEncryption.exe 
       
    4. The following message is displayed after the utility finishes running successfully.

       
    5. Press <Enter> key to exit the utility.

    Icon

    If the MasterEncryption utility has already been run before, you will receive a message "Utility has already run".


    Once run, it is not required to be run the MasterEncryption utility again, but running it again does no harm.

  19.  Run the Go Live script as detailed here.
    Icon
    • Please ensure that you run the following script only after ExamDeveloper and all the micro-services are up and running. If this is not done then the Assignment count in the Due Date Assignment Report will not get updated correctly.
    • Since this script takes more than 3 hours to complete the execution, the correct Assignment count in the Due Date Assignment Report will not be generated and displayed until it finishes the execution. You must wait for it to finish to get the correct Assignment count.

     

    The Go Live script needs to be run once to ensure that the Assignment count is correct in the Due Date Assignment report. Please follow the below steps to execute this utility.

    1. Open a web browser and enter the URL as below:

      https://ED-URL/api/QuestionSearchCriteria/UpdateAllAssignmentCountWithRetry

      where ED-URL is the ExamDeveloper URL.

      Thus, if the ExamDeveloper URL is https://examdev.pearsonvue.com/ExamDeveloper, then the URL to open in the browser will be https://examdev.pearsonvue.com/ExamDeveloper/api/QuestionSearchCriteria/UpdateAllAssignmentCountWithRetry.

    2. You will be prompted for credentials as shown below.


      Here, enter the API login credentials "username" and "password" as the values from the ExamDeveloper appSettings.config of the keys "ApiAuthenticationUserName" and "ApiAuthenticationPassword".

      Icon

      Please ensure that you do not run the URL more than once as this creates unnecessary overhead for the system by starting the job all over again.



    3. On entering the correct credentials, you will see a blank page as below with the spinning busy status indicator of the web page in the browser. This script runs for well over an hour, so you can close the browser window, and the script will keep running in the background.
       

      You can find out about whether the process has begun by looking into the General.txt file located in the Logs folder of the "DataRoot" folder mentioned in the appSettings.config of ExamDeveloper. Search for the text "Starting Migration script to update the UpdateAllAssignmentCountWithRetry". If you are able to find it, then it means that the process has started successfully. If you are unable to find it, then it means that the process didn't start and you need to run it again by going back to step a.

    4. You can cross check the job progress in the logs by looking into the General.txt file. You can check this file after 3 hours from the time the script was run, because this is the typical time taken for it to complete the processing. Search for the text "Successfully updated UpdateAllAssignmentCountWithRetry". If you are able to find it, then it means that the script has finished running successfully.

      If this text is not found in the file, you can search for the text "UpdateAllAssignmentCountWithRetry:Now processing for Assignment", which will confirm that the script is still processing. You can wait and try to search again for "Successfully updated UpdateAllAssignmentCountWithRetry" later.

      If you are not able to find the text "Successfully updated UpdateAllAssignmentCountWithRetry", and "UpdateAllAssignmentCountWithRetry:Now processing for Assignment" text has stopped updating (has not updated for more than 10 minutes) in the log, then there may be an issue in the execution of the script. IIS is reset or new build deployment may cause this behavior. Therefore, please do not deploy or reset IIS while this script is running. If that happens, please run this script again by going back to step a.

 

 

Return to the top of the page.

 Upgrade to another version.

 Software upgrade process home page.

  • No labels