mirror of
				https://github.com/SamKirkland/FTP-Deploy-Action.git
				synced 2025-10-31 19:24:00 +00:00 
			
		
		
		
	Explanation not explination
FTP Deploy for GitHub Actions
Automate deploying websites and more with this GitHub action.
Usage
action "FTP-Deploy-Action" {
   uses = "SamKirkland/FTP-Deploy-Action@master"
   secrets = ["FTP_USERNAME", "FTP_PASSWORD", "FTP_SERVER"]
}
- Select the repository you want to add the action to
- Select the actions tab (currently only for beta testers)
- Select Create a new workflow
- Select Edit new file
- Paste the above code into the bottom of the file
- Go back to the Visual editor
- Click edit on the FTP-Deploy-Action
- In the secretssection add the required params- FTP_USERNAME
- FTP_PASSWORD
- FTP_SERVER
- (see optional settings below)
 
Settings
- Options
- FTP Username: ${FTP_USERNAME}
- FTP Password: ${FTP_PASSWORD}
- FTP Server: ${FTP_SERVER}
- (Optional) Local Dir: ${LOCAL_DIR}
- (Optional) Remote Dir: ${REMOTE_DIR}
 
- Set actions by editing the action then adding them in the secretssection:
Explanation of steps
- This action is triggered by a eventon your repo
- A docker image based on mwienk/docker-lftpis spun up on github servers
- The docker container compresses your code into a tar.gz file
- The file is then uploaded to the remote server
- The file is then un-zipped
Debugging locally
Instructions for windows
- Install docker for windows
- Open powershell
- Navigate to the repo folder
- Run docker build --tag action .
- (Optional) This step is only required when editing entrypoint.sh due to windows editors saving the file with windows line breaks instead of linux line breaks
- Download http://dos2unix.sourceforge.net/
- In another powershell window nagivate to the dos2unix folder /bin
- Run this command every time you modify entrypoint.sh .\dos2unix.exe "{FULL_PATH_TO_REPO\entrypoint.sh}"
 
- Run docker run action
Instructions for linux
- Please submit a PR for linux instructions :)
ToDo
- More config options
- Deploy Mode: ${DEPLOY_MODE} full|diffs
 
- Deploy Mode: ${DEPLOY_MODE} 
- SSH support
- Switch from lftp to git
Pull Requests Welcome!
License
MIT
Description
				Deploys a GitHub project to a FTP server using GitHub actions
						
						
						
							
							actionactionscontinuous-deploymentcontinuous-integrationdeploy-actiondeployment-automationgithub-actions
						
						
						
							
								 Readme
							
						
						
							
								 MIT
							
						
						
						
							
							
							 2 MiB
						
					
					Languages
				
				
								
								
									TypeScript
								
								100%
							
						
					
