Jump to content

spetitlucine

Members
  • Posts

    11
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by spetitlucine

  1. @HushI finally made it work but it doesn't show configuration in preference/issuetracker menu

    1/ Install the extension in its own directory in application/plasticscm/contents/monobundles/extensions/myextension

    I haven't tested that it could be another place. This place implies that you have to reinstall it when updating plastic.

    2/ Indicate plastic there's an extension using the client.conf located in ~/.plastic4 folder (to add just before the closing </ClientConfData> tag

    <Extensions>

      <Extension AssemblyFile="/Applications/PlasticSCM.app/Contents/MonoBundle/extensions/myextension.dll"/>

    </Extensions>

    3/ Prepare your plugin configuration file

    a) create a folder in ~/.plastic4 named issuetrackers

    b) in issuetrackers folder creates a folder with your server name (mine is ssl so i need to indicate it before the server url and indicate the used port 8088 at the end, each part separated by underscore character) ssl_myserver.domain.com_8088.

    You can find this hierarchie of folders on your PC in %APPDATA%/local/plastic4/issuetrackers/ssl_myserver.domain.com_8088/allrepos/myextension_issue_tracker.conf

    c) in this folder create a folder named allrepos

    d) in this folder creates a file named myextension_issue_tracker.conf

    it's content is the same as your pc one.  so you can copy it from pc (if it does'nt work it could be a problem of line ending difference between pc and macs)

    if you have some parameters to configure (in my case the token to use to communicate with my issue tracker) you will have to change it manually in this file for each of your users. I didn't find any way of making the extension appear in the preference/issuetracker menu to make possible to do configuration from plastic.

    Hope that it will help you @Hush . I'm available if you need more information.

    Aware to read how to make it work "correctly" by plastic team.

    Stéphane

     

     

     

     

  2. Hello,

    I've made a custom extension for an issue tracker that we use following this tutorial:

    https://www.plasticscm.com/documentation/extensions/plastic-scm-version-control-task-and-issue-tracking-guide#WritingPlasticSCMcustomextensions

    It works perfectly on PC.

    Unfortunately some of our users are working on Mac...

    I cannot make the extension works on MacPlastic. It doesn't appear in the issue tracker list in preference menu.

    Is there somewhere a documentation showing how to setup custom issue trackers on mac ? i didn't find any customextension.conf file, tried to make one with no success, tried to modify the client.conf file adding a <CustomExtension> entry.

    I need more information.

    Thank you by advance.

    Stéphane

     

  3. Hi Olliblanks, you're right i'm using teamcity 2020.2.2. So i'm waiting for your update. Any idea of the release date ?

    Do you have a more recent tutorial for using merge bots with TC ? I wanted to know if the TC plan that i indicate to the bot to launch must have the plastic mergebot build runner as first step of build. It is not really clear for me. Moreover, when i have a TC project with multiple plans in it how should i indicate the plan to run to the bot ? Project:Plan ? Thanks by advance.

    Stéphane

  4. Hello, i would like to know where i can find a documentation on how to use trunk merge bot with teamcity.

    I try to make a trunk merge bot that merge from task branch in the father branch executing a teamcity plan to test merge integrity, but i have no success, the bot starts when i set the branch as resolved but my teamcity plan is not executed and i got an error in the trunk bot log file, leading to a failed status in the branch i want to merge automatically.

    The error is like the following

    2021-02-23 15:00:13,021 INFO  trunkbot - TrunkBot [Ben] started. Version [9.0.16.4815]
    2021-02-23 15:00:13,274 INFO  trunkbot - Retrieving branches to process...
    2021-02-23 15:00:13,337 INFO  websocket - TrunkBot [Ben] connected!
    2021-02-23 15:00:28,629 INFO  trunkbot - Processing branch /main/Prod/Test/Dev/JIRA_feature4 attribute change...
    2021-02-23 15:00:28,632 INFO  trunkbot - Getting task number of branch /main/Prod/Test/Dev/JIRA_feature4 ...
    2021-02-23 15:00:28,643 INFO  trunkbot - Building the merge report of task _feature4 ...
    2021-02-23 15:00:28,670 INFO  trunkbot - Trying to shelve server-side-merge from /main/Prod/Test/Dev/JIRA_feature4 to /main/Prod/Test/Dev
    2021-02-23 15:00:28,735 INFO  trunkbot - Testing branch /main/Prod/Test/Dev/JIRA_feature4 ...
    2021-02-23 15:00:29,050 ERROR RestApi - Unable to read the error response: Object reference not set to an instance of an object.
    2021-02-23 15:00:29,062 ERROR RestApi - Unable to retrieve CI plan status. The server returned: The remote server returned an error: (404) Not Found.. The requested element doesn't exist.
    2021-02-23 15:00:29,063 WARN  RestApi - An error occurred trying to query the get plan status endpoint /api/v1/ci/TeamCity//plan/RepoTemplate%3ARepoTemplate
    2021-02-23 15:00:29,063 WARN  RestApi - Falling back to the legacy get plan status endpoint /api/v1/ci/TeamCity/RepoTemplate%3ARepoTemplate/
    2021-02-23 15:00:29,065 ERROR RestApi - Unable to read the error response: Object reference not set to an instance of an object.
    2021-02-23 15:00:29,066 ERROR RestApi - Unable to retrieve CI plan status - deprecated. The server returned: The remote server returned an error: (404) Not Found.. The requested element doesn't exist.
    2021-02-23 15:00:29,066 ERROR trunkbot - The attempt to process task _feature4 failed for branch /main/Prod/Test/Dev/JIRA_feature4: One or more errors occurred. (The remote server returned an error: (404) Not Found.)
    2021-02-23 15:00:29,116 INFO  trunkbot - Branch /main/Prod/Test/Dev/JIRA_feature4 processing failed.


    it seems related to the way i have named the plan to launch but not sure.

    Any advice ?

    Thanks by advance

    Stéphane

  5. Hello, i'm trying to get PlasticSCM works on Mac as it works for PC.

    We need Jira integration in our production pipeline and it works well on PC.

    I've seen that there's no configuration window on mac to setup plastic scm link with jira.

    So i followed the given tutorial at https://www.plasticscm.com/documentation/extensions/plastic-scm-version-control-task-and-issue-tracking-guide#Jiraintegration

    By the way, there's a mistake in path of the client.conf configuration

    <Extensions>
        <Extension AssemblyFile="plasticscm_install_path/client/extensions/jira/jiraextension.dll" />
    </Extensions>

    should be

    <Extensions>
        <Extension AssemblyFile="/Application/PlasticSCM.app/Contents/MonoBundle/extensions/jira/jiraextension.dll" />
    </Extensions>

    my client.conf is adapted as following (just added the previous lines at the end)

    <?xml version="1.0"?>
    <ClientConfigData xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <Language>fr</Language>
      <WorkspaceServer>myserverurlandport</WorkspaceServer>
      <WorkingMode>LDAPWorkingMode</WorkingMode>
      <SecurityConfig>securityconfig</SecurityConfig>
      <CurrentWorkspace>/Users/stephane/wkspaces/SampleRepo</CurrentWorkspace>
      <MergeTools>
        <MergeToolData>
          <FileType>enTextFile</FileType>
          <FileExtensions>*</FileExtensions>
          <Tools>
            <string>/usr/local/bin/macmergetool -b="@basefile" -bn="@basesymbolic" -bh="@basehash" -s="@sourcefile" -sn="@sourcesymbolic" -sh="@sourcehash" -d="@destinationfile" -dn="@destinationsymbolic" -dh="@destinationhash" -a -r="@output" -t="@filetype" -i="@comparationmethod" -e="@fileencoding" -m="@mergetype" -re="@resultencoding" --progress="@progress" --extrainfofile="@extrainfofile"</string>
          </Tools>
        </MergeToolData>
      </MergeTools>
      <DiffTools>
        <DiffToolData>
          <FileType>enTextFile</FileType>
          <FileExtensions>*</FileExtensions>
          <Tools>
            <string>/usr/local/bin/macmergetool -s="@sourcefile" -sn="@sourcesymbolic" -d="@destinationfile" -dn="@destinationsymbolic" -t="@filetype" -i="@comparationmethod" -e="@fileencoding"</string>
          </Tools>
        </DiffToolData>
      </DiffTools>
      <ShowPerformanceWarnings>yes</ShowPerformanceWarnings>
      <MergeWithPendingChanges>no</MergeWithPendingChanges>
      <StackTrace>no</StackTrace>
      <SetFilesAsReadOnly>no</SetFilesAsReadOnly>
      <SetRevisionFileDate>no</SetRevisionFileDate>
      <SupportSmbWorkspaces>no</SupportSmbWorkspaces>
      <PerformAddPlusCi>no</PerformAddPlusCi>
      <CheckFileContentForChanged>no</CheckFileContentForChanged>
      <CaseSensitiveFsOnMac>no</CaseSensitiveFsOnMac>
      <SameItemDifferentCaseError>no</SameItemDifferentCaseError>
      <CheckinQueuesSize>50</CheckinQueuesSize>
      <DownloadPoolSize>6</DownloadPoolSize>
      <LastRunningEdition>team_or_enterprise</LastRunningEdition>
      <Extensions>
        <Extension AssemblyFile="/Applications/PlasticSCM.app/Contents/MonoBundle/extensions/jira/jiraextension.dll" />
      </Extensions>
    </ClientConfigData>

     

    and my jira.conf in ~/.Plastic4/issuetrackers/sll_serverurl_port/allrepos contains a jira.conf file with the following data

    WorkingMode=TaskOnBranch

    Name=Host;Value=ourjiraurl/;Type=Host;IsGlobal=True
    Name=User name;Value=myjiraemail;Type=User;IsGlobal=False
    Name=Password;Value=myjiratoken;Type=Password;IsGlobal=False
    Name=Branch prefix;Value=;Type=BranchPrefix;IsGlobal=True
    Name=Project Key;Value=MULTIPLE_PROJECTS;Type=Text;IsGlobal=True
    Name=Custom Field ID;Value=;Type=Text;IsGlobal=True
    Name=Use LDAP credentials if available;Value=False;Type=Boolean;IsGlobal=False
    Name=Use default proxy credentials;Value=False;Type=Boolean;IsGlobal=False
    Name=Issue query limit;Value=50;Type=Text;IsGlobal=False
    Name=Resolved issue states;Value=Done;Type=Text;IsGlobal=False
    Name=Issue types;Value=;Type=Text;IsGlobal=False
    Name=Fields mapping;Value=;Type=Text;IsGlobal=False
    Name=REST URL;Value=/rest/api/2/;Type=Text;IsGlobal=True
    Name=Task URL;Value=/browse/;Type=Text;IsGlobal=True
    Name=Status transitions;Value=[DONE]-Done;Type=Text;IsGlobal=True

    when trying to create a branch it calls the jiraextension but i get an exception Invalid URI the format of the URI could not be determined.

    the log file indicates the following

    2021-02-17 11:16:10,212 stephane ERROR PlasticThread - Error when performing background operation: Invalid URI: The format of the URI could not be determined.
    2021-02-17 11:16:10,214 stephane DEBUG PlasticThread - Stack trace:   at System.Uri.CreateThis (System.String uri, System.Boolean dontEscape, System.UriKind uriKind) [0x0007b] in <ca617bcbee124d63852388fd7f3106e6>:0
      at System.Uri..ctor (System.String uriString) [0x00014] in <ca617bcbee124d63852388fd7f3106e6>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.GetBaseRestUri () [0x00060] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.CreateAuthenticatedRequest (System.String partialUri, System.String method) [0x00001] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.TryRequest (System.String partialUri, System.String httpMethod, System.Object content, System.String& response) [0x0001c] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.TryGet[T] (System.String partialUri, T& result) [0x00008] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.DoGetTasks (System.String conditions) [0x00018] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraRestClient.GetPendingTasks (System.String assignee) [0x00014] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraHandler.GetPendingTasks (System.String assignee) [0x00001] in <8ac37d92524a463887d6e42f943350d8>:0
      at Codice.Client.IssueTracker.Jira.JiraExtension.GetPendingTasks (System.String assignee) [0x00001] in <8ac37d92524a463887d6e42f943350d8>:0
      at im.b (System.Boolean A_0) [0x0000b] in <b816f616cec244e082b4ba1c3a67eb57>:0
      at im+a.b () [0x00001] in <b816f616cec244e082b4ba1c3a67eb57>:0
      at Codice.Client.Common.Threading.PlasticThread.ThreadWork (System.Object state) [0x0000a] in <c486789c633545be9a72ad39a565b17f>:0

    I tried to use the same config jira config file as my Plastic SCM client has with the same result even if it works well on my PC.

    Has somebody some suggestion ?

    Thanks by advance

    Stéphane

     

     

  6. Hello,

    i want to change from github to plasticscm some projects.

    My first try was to use the gitsync option, the import works well i have the same workspace directory structure as the one with github, but it appears that i can't break the sync process after importing the project, and that some features cannot be used because of the sync with git that i don't want in fact (i never want to push things back to git, i just want to import the gihub repo and keep traces of all history).

    So i tried to use git fast-export then cm fast-import but in this case, when opening the imported plasticscm repo i can find old directories that was deleted or renamed in my workspace.

    Has someone some tips ?

    My only need is to get my github repo in a plastic repo with all history but no old renamed/move/deleted folders or files, but i never want to push back to git but gitsync cannot be removed after syncing and some features cannot be done because of the sync i don't need.

    Thanks by advance.

    Stéphane

    Edited: Seems like there's only old empty directories...

×
×
  • Create New...