mirror of https://github.com/01-edu/public.git
Browse Source
* docs(nexus project): Add project sample 1 * docs(Nexus project): Add Readme file for project sample 2 * docs(Nexus project): Add audit file for project sample 1 * docs(Nexu project): Add audit file for project sample 2 * docs(Nexus project): Remove project objectives section * docs(Nexus project): Change evaluation criteria * docs(Nexus project): Remove folders term from tasks description * docs(Nexus): Update subject 2 * docs(Nexus): Delete subject sample 1 * docs(Nexus): Rename README files * docs(Nexus): Update subject * doces(Nexus): Update audit file * docs(Nexus): Remove builds and tests part * docs(Nexus): Update subject * docs(Nexus): Remove CI CD related question from auditpull/2206/head
Abdelilah Khossan
1 year ago
committed by
GitHub
2 changed files with 101 additions and 0 deletions
@ -0,0 +1,44 @@
|
||||
# Artifact Management System with Nexus |
||||
|
||||
## Project Description |
||||
Welcome to the **Nexus** project! This hands-on project is designed to provide you with a comprehensive learning experience in utilizing Nexus by Sonatype as a central repository for storing, managing, and deploying software artifacts. Through a series of tasks and requirements, you'll explore various aspects of artifact management, version control, Docker integration, continuous integration, and security considerations. |
||||
|
||||
## Project Requirements |
||||
In this project, You will have to be working with, at least, java 11 and a version of Maven that is compatible with it. |
||||
|
||||
1. **Setup Nexus Repository Manager:** |
||||
- Obtain the most recent release of Nexus Repository Manager, and proceed to install and set it up on either a local or remote server. It is essential to configure Nexus to operate under a "nexus" user rather than the "root" user. |
||||
- Create repositories and set them up for different artifact types such as JARs, WARs, and Docker images. |
||||
|
||||
2. **Sample Web Application:** |
||||
- Clone buy-02 project repository, configure the web application as Maven project. |
||||
|
||||
3. **Artifact Publishing:** |
||||
- Configure Maven to publish the built artifacts to the appropriate repositories in Nexus. |
||||
|
||||
4. **Dependency Management:** |
||||
- Utilize Nexus as a proxy for fetching external dependencies required for the web application. |
||||
- Configure the project to resolve dependencies from Nexus repositories. |
||||
|
||||
5. **Versioning:** |
||||
- Implement versioning for the web application and its artifacts using Nexus capabilities. |
||||
- Demonstrate how to retrieve and manage different versions of the artifacts. |
||||
|
||||
6. **Docker Integration:** |
||||
- Set up a Docker repository in Nexus and publish the Docker image to the repository. |
||||
|
||||
7. **Continuous Integration (CI):** |
||||
- Configure the pipeline, in addition to builds and tests, add artifact publishing whenever changes are pushed to the repository. |
||||
|
||||
8. **Documentation:** |
||||
- Create clear and detailed documentation that explains the project setup, configuration steps, and usage instructions. |
||||
- Include screenshots and examples to guide users through the artifact management process. |
||||
|
||||
9. **Bonus: Nexus Security and Access Control:** |
||||
- Explore Nexus security features such as user authentication, role-based access control, and repository-level permissions. |
||||
- Configure security settings to restrict access to certain artifacts or repositories. |
||||
|
||||
## Evaluation |
||||
Your project will be evaluated based on the completion of all required tasks. Refer to the provided evaluation audit document for the criteria and checklist used by the evaluator. |
||||
|
||||
Enjoy your journey into the world of Nexus and artifact management! |
@ -0,0 +1,57 @@
|
||||
#### Functional |
||||
|
||||
##### Setup Nexus Repository Manager |
||||
|
||||
###### Has the Nexus Repository Manager been successfully installed and configured on a local or remote server? |
||||
|
||||
###### Is Nexus configured correctly to work under the specified user not 'root' user? |
||||
|
||||
###### Are repositories set up for different artifact types such as JARs, WARs, and Docker images? |
||||
|
||||
##### Development and Structure |
||||
|
||||
###### Is there a simple web application developed using the Spring Boot framework? |
||||
|
||||
###### Does the project utilize a proper Maven or Gradle project structure? |
||||
|
||||
##### Artifact Publishing |
||||
|
||||
###### Is the build tool (Maven or Gradle) properly configured to publish built artifacts (JARs/WARs) to the relevant repositories in Nexus? |
||||
|
||||
##### Dependency Management |
||||
|
||||
###### Is Nexus used as a proxy for fetching external dependencies required by the web application? |
||||
|
||||
###### Is the project configured to resolve dependencies from Nexus repositories? |
||||
|
||||
##### Versioning |
||||
|
||||
###### Is versioning implemented for the web application and its artifacts using Nexus capabilities? |
||||
|
||||
###### Are different versions of artifacts effectively retrieved and managed? |
||||
|
||||
##### Docker Integration |
||||
|
||||
###### Is there a Docker repository set up in Nexus, and is the Docker image published to the repository? |
||||
|
||||
##### Continuous Integration (CI) |
||||
|
||||
###### Does the pipeline automatically trigger builds, tests, and artifact publishing upon repository changes? |
||||
|
||||
##### Documentation |
||||
|
||||
###### Is clear and detailed documentation provided for project setup, configuration, and usage? |
||||
|
||||
###### Does the documentation include relevant screenshots and examples? |
||||
|
||||
#### Bonus: Nexus Security and Access Control |
||||
|
||||
##### Security Exploration |
||||
|
||||
###### Have Nexus security features like user authentication and role-based access control been explored? |
||||
|
||||
###### Are repository-level permissions effectively configured? |
||||
|
||||
##### Configuration |
||||
|
||||
###### Are security settings configured to restrict access to specific artifacts or repositories in Nexus? |
Loading…
Reference in new issue