Software Artifact
Jump to navigation
Jump to search
A Software Artifact is data item that is produced during software development process.
- Context:
- It can include: source code, configuration files, data files, executables, libraries, documentation, or other related files.
- It can (often) be an output from one stage of the software development process and be used as input in another stage.
- It can be archived, versioned, and managed in artifact repositories like Nexus Repository Manager, JFrog Artifactory, or cloud services like GCP Artifact Registry and AWS ECR.
- It can be an important component for build and deployment automation in Continuous Integration and Continuous Deployment (CI/CD) pipelines.
- ...
- Example(s):
- Source Code: A Python script (.py) or a Java class file (.java) used in the development process.
- Documentation: A README.md file or an API reference document that details software usage and maintenance.
- Software Build: The output, such as complied binaries or software libraries, resulting from a Software Build Process, often versioned and stored in artifact repositories for deployment or distribution.
- Compiled Binary: A Java .jar or executable file resulting from compiling source code.
- Configuration File: A .env file or a web.config file used to control application behavior.
- Docker Image: A Docker container image stored in a Docker container repository, which can be used to create Docker containers.
- Package Repository: A npm (Node package manager) or Maven repository used for sharing and distributing code packages.
- ...
- Counter-Example(s):
- See: Source Code, Configuration File, Continuous Integration, Continuous Deployment, Artifact Repository.