How to store and retrieve values from gitlab pipeline?

I am having a gitlab pipeline, where as a first step I am creating an ec2 instance and in remaining stages, I am passing the pem file and server ip as artifacts and using the ec2 instance there, at the end I am destroying the ec2 instance.

Now, as a change, I want to keep the destroy stage as arbitrary so user can decide whether to destroy it or not.

If he choose to not destroy, then there should be an option to use that in another pipeline.

But the artifact data is run specific and won’t be available once the user runs the pipeline again.

Any common storage, where all the subsequent runs of pipeline can access data,so that I would store the pem file there mapped with server ip, so whenever user passes the ip address as variable value, pipeline should pick from here.