Deploying one application from two repo using Capistrano - capistrano

We have an application that is divided between two code repo: one public and one private. I would like to use Capistrano to deploy the application from these two locations and copy it to one directory.
For example:
public: github.com/app_public
private: github.com/app_private
application should be deployed to: hostname/home/myaccount/app

Related

CI/CD for multi-tenant application with single repository but multiple clients

I have a database-driven application with a single code base configured for multiple clients using the database setting and config files.
The main code base consists of common/core code/files that are being used by all the clients and some client-specific code/files. Both types of files are in different folders of the same repository.
We have been planning to integrate CI/CD using GitHub and Jenkins. I am new to Jenkins.
In GitHub, we have a single repository that contains all the code/files. I want to use Jenkins to deploy to different client environments but make sure that only files related to a specific client should be deployed to that client environment.
What could be the best way or possible solutions for this?
Edit: Basically I want to deploy specific files that are client related to specific client environments.
Any and all suggestions would be highly appreciated.

How to include config files when deploying to Vercel

I have a NextJS project I want to deploy to Vercel. The server needs a config file which is a typescript file containing an object, and is ignored from version control. Obviously when Vercel clones my repo it doesn't get the config file. Is there any way to sideload this config file into Vercel or do I need to fork my own repo privately so I can include the config file?
I've done some research and the only faster way I found is to push directly to Vercel using the cmd/cli.
Here's the doc: https://vercel.com/docs/cli
Another way could be to create two repositories, one private where is your Vercel project linked, and another public without your config file (as you said).

Can I have several public directories configured for only one VERCEL deployment?

I have a Monorepo that holds different proyects that are related within each other and they shared some common dependencies, so it make sense to have them all together coupled inside the same Mono. I have a build process that runs inside vercel which iterates through each build step of all the workspaces. The build cache here helps me to just rebuild the proyects that needs to. Everything is ok here.
But, there is not too much customization I found on Vercel on how I could define multiple Public Directories. So, to be more graphical with this ..
MONOREPO
-----Workspace A
--------src/
--------dist/
-----Workspace B
--------src/
--------dist/
-----Workspace C
--------src/
--------dist/
So my Public Directory here is /**/dist/, but I'm not sure if a Pattern (globs, regex, etc) is accepted as an input value. I could also have a Public Workspace for the all the builds living outside of each workspace and place every build compilation inside there using a subdirectory structure but first I would like to know if using a Pattern is possible with vercel.

Publish multiple projects - AzureDevOps

Sure this will be an easy one - but when creating a pipeline for a solution that includes 2 projects, one with and without wwwroot only the web project gets published. How do we publish all projects?
Normally we have at least two directions:
Create multiple pipelines (two CI pipelines or two CI and two CD pipelines), one for ProjectA and the other for ProjectB.
Create one pipeline with multiple publish steps. So you may have two Publish tasks in same pipeline, one to publish ProjectA and the other to publish ProjectB.
But since it's unclear the project type of your projects, and which task do you use the 'Publish', you may get help help from these tips:
If the publish you mean is Publish Artifact, check this issue.
If the Publish you mean is to deploy the projects to something like Azure App Service, also you're using the Azure App Service Deploy task:
You can copy the ProjectA and ProjectB's outputs to same path, and set the value of PackageOrFolder to that path. (If the two projects have dependency relationship, so you may need to publish two projects together to same path?)
Or just use two Publish tasks. Use the Publish task you used to use for publishing the web project. To publish the non-web project, you may need a different publish task? (Not sure about the project type and what place you want to publish to, I'm not sure about the task you should use).

Production configration on a public GitHub repository

I have a project that will be published on GitHub, but we don't want to expose our production configuration to the public, e.g. items like: api url, api key, and 3rd party keys.
Many projects do it but using .ignore is not the desired way to achieve this.
What is the way to do this so that the repository has all the configuration on company machines but not included on GitHub?
Example projects:
Wire ios APP
Artsy
kickstarter