Jason Song 
							
						 
					 
					
						
						
							
						
						4011821c94 
					 
					
						
						
							
							Implement actions ( #21937 )  
						
						... 
						
						
						
						Close  #13539 .
Co-authored by: @lunny @appleboy @fuxiaohei and others.
Related projects:
- https://gitea.com/gitea/actions-proto-def 
- https://gitea.com/gitea/actions-proto-go 
- https://gitea.com/gitea/act 
- https://gitea.com/gitea/act_runner 
### Summary
The target of this PR is to bring a basic implementation of "Actions",
an internal CI/CD system of Gitea. That means even though it has been
merged, the state of the feature is **EXPERIMENTAL**, and please note
that:
- It is disabled by default;
- It shouldn't be used in a production environment currently;
- It shouldn't be used in a public Gitea instance currently;
- Breaking changes may be made before it's stable.
**Please comment on #13539  if you have any different product design
ideas**, all decisions reached there will be adopted here. But in this
PR, we don't talk about **naming, feature-creep or alternatives**.
### ⚠️  Breaking
`gitea-actions` will become a reserved user name. If a user with the
name already exists in the database, it is recommended to rename it.
### Some important reviews
- What is `DEFAULT_ACTIONS_URL` in `app.ini` for?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1055954954 
- Why the api for runners is not under the normal `/api/v1` prefix?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1061173592 
- Why DBFS?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1061301178 
- Why ignore events triggered by `gitea-actions` bot?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1063254103 
- Why there's no permission control for actions?
  - https://github.com/go-gitea/gitea/pull/21937#discussion_r1090229868 
### What it looks like
<details>
#### Manage runners
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205870657-c72f590e-2e08-4cd4-be7f-2e0abb299bbf.png ">
#### List runs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872794-50fde990-2b45-48c1-a178-908e4ec5b627.png ">
#### View logs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872501-9b7b9000-9542-4991-8f55-18ccdada77c3.png ">
</details>
### How to try it
<details>
#### 1. Start Gitea
Clone this branch and [install from
source](https://docs.gitea.io/en-us/install-from-source ).
Add additional configurations in `app.ini` to enable Actions:
```ini
[actions]
ENABLED = true
```
Start it.
If all is well, you'll see the management page of runners:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205877365-8e30a780-9b10-4154-b3e8-ee6c3cb35a59.png ">
#### 2. Start runner
Clone the [act_runner](https://gitea.com/gitea/act_runner ), and follow
the
[README](https://gitea.com/gitea/act_runner/src/branch/main/README.md )
to start it.
If all is well, you'll see a new runner has been added:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205878000-216f5937-e696-470d-b66c-8473987d91c3.png ">
#### 3. Enable actions for a repo
Create a new repo or open an existing one, check the `Actions` checkbox
in settings and submit.
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879705-53e09208-73c0-4b3e-a123-2dcf9aba4b9c.png ">
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879383-23f3d08f-1a85-41dd-a8b3-54e2ee6453e8.png ">
If all is well, you'll see a new tab "Actions":
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205881648-a8072d8c-5803-4d76-b8a8-9b2fb49516c1.png ">
#### 4. Upload workflow files
Upload some workflow files to `.gitea/workflows/xxx.yaml`, you can
follow the [quickstart](https://docs.github.com/en/actions/quickstart )
of GitHub Actions. Yes, Gitea Actions is compatible with GitHub Actions
in most cases, you can use the same demo:
```yaml
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 
on: [push]
jobs:
  Explore-GitHub-Actions:
    runs-on: ubuntu-latest
    steps:
      - run: echo "🎉  The job was automatically triggered by a ${{ github.event_name }} event."
      - run: echo "🐧  This job is now running on a ${{ runner.os }} server hosted by GitHub!"
      - run: echo "🔎  The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
      - name: Check out repository code
        uses: actions/checkout@v3
      - run: echo "💡  The ${{ github.repository }} repository has been cloned to the runner."
      - run: echo "🖥️  The workflow is now ready to test your code on the runner."
      - name: List files in the repository
        run: |
          ls ${{ github.workspace }}
      - run: echo "🍏  This job's status is ${{ job.status }}."
```
If all is well, you'll see a new run in `Actions` tab:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884473-79a874bc-171b-4aaf-acd5-0241a45c3b53.png ">
#### 5. Check the logs of jobs
Click a run and you'll see the logs:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884800-994b0374-67f7-48ff-be9a-4c53f3141547.png ">
#### 6. Go on
You can try more examples in [the
documents](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions )
of GitHub Actions, then you might find a lot of bugs.
Come on, PRs are welcome.
</details>
See also: [Feature Preview: Gitea
Actions](https://blog.gitea.io/2022/12/feature-preview-gitea-actions/ )
---------
Co-authored-by: a1012112796 <1012112796@qq.com >
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: delvh <dev.lh@web.de >
Co-authored-by: ChristopherHX <christopher.homberger@web.de >
Co-authored-by: John Olheiser <john.olheiser@gmail.com > 
					
						2023-01-31 09:45:19 +08:00 
						 
				 
			
				
					
						
							
							
								KN4CK3R 
							
						 
					 
					
						
						
							
						
						fc037b4b82 
					 
					
						
						
							
							Add support for incoming emails ( #22056 )  
						
						... 
						
						
						
						closes  #13585 
fixes  #9067 
fixes  #2386 
ref #6226 
ref #6219 
fixes  #745 
This PR adds support to process incoming emails to perform actions.
Currently I added handling of replies and unsubscribing from
issues/pulls. In contrast to #13585  the IMAP IDLE command is used
instead of polling which results (in my opinion 😉 ) in cleaner code.
Procedure:
- When sending an issue/pull reply email, a token is generated which is
present in the Reply-To and References header.
- IMAP IDLE waits until a new email arrives
- The token tells which action should be performed
A possible signature and/or reply gets stripped from the content.
I added a new service to the drone pipeline to test the receiving of
incoming mails. If we keep this in, we may test our outgoing emails too
in future.
Co-authored-by: silverwind <me@silverwind.io >
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com > 
					
						2023-01-14 23:57:10 +08:00 
						 
				 
			
				
					
						
							
							
								ya 
							
						 
					 
					
						
						
							
						
						eaa561145a 
					 
					
						
						
							
							Update docs comparison.zh-cn.md ( #21035 )  
						
						... 
						
						
						
						- Update Chinese translation from comparison.en-us.md
<!--
Please check the following:
1. Make sure you are targeting the `main` branch, pull requests on
release branches are only allowed for bug fixes.
2. Read contributing guidelines:
https://github.com/go-gitea/gitea/blob/main/CONTRIBUTING.md 
3. Describe what your pull request does and which issue you're targeting
(if any)
-->
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: 6543 <6543@obermui.de > 
						
						
					 
					
						2022-09-13 00:16:32 -04:00 
						 
				 
			
				
					
						
							
							
								Kiel Hurley 
							
						 
					 
					
						
						
							
						
						2b4d43dd4d 
					 
					
						
						
							
							Add SAML SP status to Feature Comparison docs ( #20743 )  
						
						... 
						
						
						
						* Add SAML SP integration
Add current SAML 2.0 Service Provider (SP) status. RhodeCode EE supports SAML, CE does not.
Included issue links for both Gitea and Gogs, as corporate users will likely be interested in the status of both.
* Add SAML SP status to comparison for other translations
Co-authored-by: Lauris BH <lauris@nix.lv >
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com >
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com > 
						
						
					 
					
						2022-08-11 07:04:09 +02:00 
						 
				 
			
				
					
						
							
							
								PEN² 
							
						 
					 
					
						
						
							
						
						d890f0d38c 
					 
					
						
						
							
							docs: update comparison.zh-cn.md ( #20656 )  
						
						... 
						
						
						
						Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com > 
						
						
					 
					
						2022-08-05 14:56:09 -04:00 
						 
				 
			
				
					
						
							
							
								silverwind 
							
						 
					 
					
						
						
							
						
						ae52df6a64 
					 
					
						
						
							
							Add markdownlint ( #20512 )  
						
						... 
						
						
						
						Add `markdownlint` linter and fix issues. Config is based on the one
from electron's repo with a few rules relaxed. 
						
						
					 
					
						2022-07-28 09:22:47 +08:00 
						 
				 
			
				
					
						
							
							
								Lunny Xiao 
							
						 
					 
					
						
						
							
						
						c14ca34d57 
					 
					
						
						
							
							update the comparison documents ( #18669 )  
						
						... 
						
						
						
						* update the comparison documents
* Remove U2f 
						
						
					 
					
						2022-02-08 11:00:13 -05:00 
						 
				 
			
				
					
						
							
							
								Patrick Schratz 
							
						 
					 
					
						
						
							
						
						af79677a44 
					 
					
						
						
							
							Reformat docs ( #13897 )  
						
						... 
						
						
						
						Co-authored-by: 6543 <6543@obermui.de >
Co-authored-by: Lauris BH <lauris@nix.lv > 
						
						
					 
					
						2020-12-09 07:47:06 +01:00 
						 
				 
			
				
					
						
							
							
								6543 
							
						 
					 
					
						
						
							
						
						3ae5f8ef11 
					 
					
						
						
							
							[Docs] Update Feature 'Reject unsigned commits' ( #9793 )  
						
						... 
						
						
						
						* update docs
* add link to feature 
						
						
					 
					
						2020-01-16 01:43:02 -05:00 
						 
				 
			
				
					
						
							
							
								Lunny Xiao 
							
						 
					 
					
						
						
							
						
						03e4db40cc 
					 
					
						
						
							
							improve zh-cn comparison docs ( #6336 )  
						
						
						
						
					 
					
						2019-03-21 22:38:23 -04:00 
						 
				 
			
				
					
						
							
							
								我没有抓狂 
							
						 
					 
					
						
						
							
						
						8c8ac1a162 
					 
					
						
						
							
							add doc/features/comparison zh-cn translation ( #6067 )  
						
						
						
						
					 
					
						2019-02-16 21:12:42 +08:00