Attachment: attach

Use the attach command to attach a file to a project.

The attach command returns the ID of the newly created or updated attachment.

Syntax

The syntax for this command is:

stcmd{Ex} attach –p “user:pwd@host:port/project/view” 
[ -epwdile “pathToPasswordFile” ] –type “typeName” –id itemID 
-afp attachmentFilePath  [ -an “attachmentName” ] [ -rmv ]
Parameter
Description
-p
Indicates the view or folder to be used. It also provides the user name and password needed to access the server. -p is retained for backward compatibility. Commands using -p continue to work, but are stateless. Each command opens a connection, executes the command syntax, and closes the connection. (New command line scripts may take advantage of the command line's stateful nature. See connect and set for examples. Old scripts may be migrated to the new command line syntax.) Stateless commands cause more client server traffic than stateful commands.
Note: If the clear text password contains the @ or the : symbols, then it cannot be specified through -p using the syntax username:password@host:port. The @ or :symbols will conflict with the syntax and cause the command to fail. In general, passwords with special characters in them such as @, :, ,, must be stored in the password file using the store-password command. Additionally, the password, when specified for storage in the encrypted file, must be quoted. For example: stcmd store-password -password "foo@bar" -epwdfile c:\tmp\pwdfl. Passwords stored in an encrypted password file can be used in conjunction with -p or the connect command as documented.

The full syntax is:

stcmd -p "userName:password@hostName:endpoint/projectName/[viewName/][folderHierarchy/]"

For example:

stcmd -p “bsmith:rocketfive@orion:49201/StarDraw/StarDraw/SourceCode/”
  • If the user name is omitted, the current user name is used.
  • If the password is omitted, the user is prompted to enter the password. When the user types a password, the characters are not displayed on the screen.
  • If the host name is omitted, the default is localhost.
  • Entering an endpoint (port number) is required. The default is 1024.
  • The project name is always required.
  • A view hierarchy should be used to identify the view. Use the colon (:) as a delimiter between view names. The view hierarchy should always include the root view. For example, "StarDraw:Release 4:Service Packs" indicates that the view to be used is the Service Packs view, which is a child of the Release 4 view and a grandchild of the StarDraw root view. If the view name is omitted, the root view is used. If the view is the only view in that project with that name, you can use only the view name. Doing this is not recommended, however, because another view with that name could be created at a later date.
  • A folder hierarchy should be used to identify the folder. Use the forward slash (/) as a delimiter between folder names. The folder hierarchy never includes the root folder. Omit the folder hierarchy if the file is in the view’s root folder. For example, if the root folder of the view is StarDraw, and the hierarchy to your files is StarDraw/SourceCode/Client, use only "SourceCode/Client".
-epwdfile

The -epwdfile keyword specifies the path to the file that contains the encrypted password. Like -pwdfile , -epwdfile replaces the password being used as part of the -p or -s option, preventing others from seeing the user's password on the command line. The full syntax is: -epwdfile "filePath" .

The -pwdfile is supported for backward compatibility. Un-encrypted passwords stored using older versions of stcmd are read. However, passwords cannot be stored to files using -pwdfile anymore.

Note: When -epwdfile is used, a password should not be specified as part of the -p or -sparameter.

In this case, the syntax of -p or -s reduces to -p "username@hostname:port/... -epwdfile "fullyQualifiedPathToPasswordFile"".

The following is the syntax of the commands that can be used to store an encrypted password.

Use the following syntax to be prompted for the password that will be encrypted and stored in a file.

stcmd store-password -epwdfile "filePath"
Use the following syntax to include the encrypted password in the command as clear text.
Note: This action does not access the network with the clear value.
stcmd store-password -epwdfile "filePath" -password "password"

After an encrypted password is stored, other stcmd commands can specify -epwdfile "filePath"' as parameters. For example:

stcmd delete-local -p "JMarsh@Orion:1024/StarDraw/StarDraw/SourceCode" -epwdfile "C:\estuff\myfile.txt" -filter "N" "*"
Important:

If -p or -s and -epwdfile are used together, then the parameter :password must be omitted from -p. For example:

-p user@hostname:port/projectName.viewName -epwdfile "pathToPasswordFile"
-type
Specifies the type of item. The type is one of the stock type names, such as changerequest, task, requirement, sprint, story, plan or any custom type name that is applicable to the command.
-id
Can be either the unique item (view member) ID of the item. Find View Member IDs by looking in the property lists of the StarTeam Cross-Platform Client or can be queried using the select command, or the primary descriptor of the item, for example, changerequest, task, or requirement number.
-afp
Provides the fully qualified path to the attachment on disk.
-an

Describes an optional attachment name.

If this is not specified, the file name is used as the attachment name.

If an attachment with this name already exists, attached to this item, then the original attachment content is replaced.

-rmv
Is an optional parameter that specifies that the attachment with the given name (either from -afp or -an) should be removed.